Kab*_*Chi 7 xcode localization objective-c ios swift
我正在使用Localize-Swift库(链接)来本地化我的应用程序,它可以正常使用.strings文件.问题是我必须本地化为一个从右到左的语言,我必须通过Interface Builder Storyboard进行本地化,这样我就可以使视图控制器看起来正确的RTL格式.问题是如何将故事板实时设置为用户选择的语言?
例如,我有2个故事板文件:
1- ... /ProjectName/Base.lproj/Main.storyboard
2- ... /ProjectName/fa-IR.lproj/Main.storyboard
我如何实时切换它们?
我已经知道我可以在方案和设备语言中更改它,但我想实时做,我不希望用户重新启动他们的设备.
谢谢
找到了答案:
NSUserDefaults.standardUserDefaults().setObject(["language identifier"], forKey: "AppleLanguages")
NSUserDefaults.standardUserDefaults().synchronize()
Run Code Online (Sandbox Code Playgroud)
不幸的是用户必须重启应用程序!如果有人能找到解决方案,不重新启动应用程序,请通知我.
我认为 KababChi 的回答是正确的。但是,在较新版本的 Swift 中NSUserDefaults已被UserDefaults. 所以代码看起来像这样:
UserDefaults.standard.set(languages[indexPath.row], forKey: "AppleLanguages")
UserDefaults.standard.synchronize()
Run Code Online (Sandbox Code Playgroud)
应用仍需要重新启动才能应用这些更改。
| 归档时间: |
|
| 查看次数: |
22231 次 |
| 最近记录: |