相关疑难解决方法(0)

在iOS中获取当前的设备语言?

我想显示设备UI正在使用的当前语言.我会用什么代码?

我希望这是一个NSString完全拼写的格式.(不是@"en_US")

编辑:对于那些开车的人来说,这里有很多有用的评论,因为答案随着新的iOS版本的发展而演变.

cocoa-touch objective-c ios nslocale

420
推荐指数
14
解决办法
23万
查看次数

如何强制NSLocalizedString使用特定语言

在iPhone上NSLocalizedString返回iPhone 语言的字符串.是否可以强制NSLocalizedString使用特定语言使应用程序使用与设备不同的语言?

localization objective-c internationalization nslocalizedstring ios

261
推荐指数
16
解决办法
14万
查看次数

如何获得用户的时区?

有谁知道在Swift中获取用户时区的方法?

我正在从数据库中获取特定时间的某些东西,然后需要从它们所在的位置减去/添加它们以向它们显示正确的时间.

macos xcode nstimezone ios swift

98
推荐指数
4
解决办法
8万
查看次数

快速改变语言

现在我知道苹果不推荐这个.

通常,您不应在应用程序中更改iOS系统语言(通过使用AppleLanguages pref键).这违反了在Settings应用程序中切换语言的基本iOS用户模型,并且还使用了未记录的首选项键,这意味着在将来的某个时候,键名可能会更改,这会破坏您的应用程序.

但是,这是一个应用程序,在运行中改变语言是有道理的,只要相信我.我也知道这里提出了这个问题:在运行iOS时,以编程方式动态更改语言.然而,这已经老了,我想知道是否有更新,更好或更简单的方法来做到这一点.目前在我的应用程序中,我有一个语言选择屏幕.单击此视图中的按钮可使用与该按钮关联的语言调用以下函数:

 func changeLang(language: String) {

    if language != (currentLang as! String?)! {
        func handleCancel(alertView: UIAlertAction!)
        {

        }
        var alert = UIAlertController(title: NSLocalizedString("language", comment: "Language"), message: NSLocalizedString("languageWarning", comment: "Warn User of Language Change Different Than Defaults"), preferredStyle: UIAlertControllerStyle.Alert)

        alert.addAction(UIAlertAction(title: "Cancel", style: UIAlertActionStyle.Cancel, handler:handleCancel))
        alert.addAction(UIAlertAction(title: "Yes", style: UIAlertActionStyle.Default, handler:{ (UIAlertAction) in

            NSUserDefaults.standardUserDefaults().setObject([language], forKey: "AppleLanguages")
            NSUserDefaults.standardUserDefaults().synchronize()
            println(self.currentLang)

            let alert = UIAlertView()
            alert.title = NSLocalizedString("language", comment: "Sign In Failed")
            alert.message = NSLocalizedString("languageChangeNotification", comment: "Notify of language change")
            alert.addButtonWithTitle(NSLocalizedString("ok", comment: …
Run Code Online (Sandbox Code Playgroud)

iphone internationalization nsuserdefaults ios swift

15
推荐指数
2
解决办法
2万
查看次数

设置"AppleLanguages"不会更改应用程序语言

我正在尝试实现可以​​更改应用程序语言的功能.
我试着像这样设置:

let defaults = NSUserDefaults.standardUserDefaults()
defaults.setObject("de", forKey: "AppleLanguages")
Run Code Online (Sandbox Code Playgroud)

应用程序重启后语言仍为"系统默认".
现在我通过设置测试不同的语言Scheme > Application Language > language.
但用户是否可以单击按钮并在重新启动后查看所选语言?

还有什么方法可以避免在重启时更改语言?

ios swift ios8

7
推荐指数
3
解决办法
1万
查看次数