我正在编写iOS应用,希望用户能够独立于iPhone或iPad的语言更改UI语言。问题是,如何在语言更改时为当前显示的视图重新加载适当的NIB文件,以及如何加载相应的.strings文件以便NSLocalizedString
正常工作?动态更改iOS应用的语言
25
A
回答
27
这应该是诀窍,假设de
是用户选择的新语言。还保证你重新启动当前视图。
[[NSUserDefaults standardUserDefaults] setObject:[NSArray arrayWithObjects:@"de", nil]
forKey:@"AppleLanguages"];
4
个人而言,我不喜欢将NIB文件提供给译员的想法。相反,我设计了NIB,因此有足够的空间存放非英语语言(通常它们需要50%的文本空间),然后将所有文本资源存储在Localizable.strings文件中。
然后,在我的代码中,我为每个UI控件设置文本。
[_myButton setTitle:NSLocalizedString(@"My button title",
@"My description for translation file, e.g. including chars limit")
forState:UIControlStateNormal];
我觉得这使翻译过程更容易管理。
要回答您的原始问题,您需要将该代码放入UIView
的viewWillAppear
函数中,以确保每次UI重新出现时都会重新加载该代码。
相关问题
- 1. 动态更改iOS应用程序的语言
- 2. iOS应用程序允许动态语言更改吗?
- 3. 更改语言在应用的iOS
- 4. 更改ios应用程序的语言
- 5. zf2动态更改语言
- 6. 更改语言动态codeigniter
- 7. liferay动态更改语言
- 8. Android - 动态更改语言
- 9. 动态更改UI语言
- 10. ios更改默认应用语言
- 11. 在iOS应用程序中动态更改UI元素的语言
- 12. Android语言的动态更改
- 13. 更改语言动态使用机器人多语言支持?
- 14. 防止语言环境更改后的应用语言更改
- 15. 更改应用语言更改的文本框输入语言
- 16. Tesseract更改语言iOS
- 17. 作为设备语言更改更改应用程序语言
- 18. 动态Android应用语言
- 19. 动态更改验证码语言
- 20. 如何动态更改语言?
- 21. 在iOS应用程序中更改语言设置的事件
- 22. 轻触按钮时更改iOS应用程序的语言
- 23. iOS设备上的语言更改
- 24. 更改Android应用程序的语言
- 25. iOS - 按语言环境更改UIDatePicker的语言
- 26. 更改应用程序的语言环境而不更改Windows语言环境
- 27. Android - 更改应用程序本身的语言环境语言
- 28. 是否可以动态更改模态对话框的语言?
- 29. iOS更改应用语言目标c无法正常工作
- 30. 在iOS应用程序中更改语言
你知道人们可以在设置应用程序中更改语言,并且你的应用程序应该不**具有单独的选项,对吗? – 2011-05-31 19:57:26
如果您希望某种语言成为备用语言,那么您可能需要一个单独的选项,该语言与用户语言列表中第一个现有本地化语言不同。这是一种非常普遍的模式。 – brainray 2014-06-28 06:11:26