在没有故事板的项目中本地化UIAlertView&脱机通知
我正在开发一个没有任何storyboards
的项目。所以我不能使用“基本国际化”在没有故事板的项目中本地化UIAlertView&脱机通知
我已经创建localizable.string,然后打开本地化为每个所需的语言。
然后试着做
- UIAlertView * messageBox = [[UIAlertView alloc] initWithTitle:
NSLocalizedString(@"title", nil)
message: NSLocalizedString(@"msg", nil)
delegate: self
cancelButtonTitle: NSLocalizedString(@"ok", nil)
otherButtonTitles: nil];
并通知我使用的NSDictionary和存储通知如下:
- [alertMessages setObject:NSLocalizedString(@"test_notification", nil)
forKey:@"6"];
但改变设备的语言时,它不会做任何改变。有没有我缺少的步骤或者是否有更好的方法?任何工作参考将不胜感激!
解决方案1:
执行下列操作步骤。
- 清理项目
- 删除应用程序从设备/模拟器
- 如果模拟器 - 复位。
- 删除派生文件(XCode> Window> Projects>派生数据删除)
- 安装应用程序,它会工作。
我认为它只是缓存问题。
解决方案2:
NSLocalizedString默认使用Localizable.strings文件。更改您的File.strings名称,然后重试。
NSLocalizedStringFromTable(@“Message”,@“File”);
伟大..解决方案2为我工作! 我正在使用NSLocalizedString但NSLocalizedStringFromTable(@“消息”,@“文件”,评论);做到了这个把戏 –
我的快乐:)快乐编码。 –
伟大的@VS它的工作:p –
在Localizable.strings文件中显示标题,msg和ok。 –
in localizable,strings(English) “title”=“恭喜!”; “msg”=“你已经完成了所有的关卡”; “ok”=“明白了”; in localizable.strings(法语) “title”=“Félicitations!”; “msg”=“Vous avezterminétous les niveaux”; “ok”=“COMPRIS” –
删除应用程序和清理,而不是重新运行。 –