在没有故事板的项目中本地化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"]; 

但改变设备的语言时,它不会做任何改变。有没有我缺少的步骤或者是否有更好的方法?任何工作参考将不胜感激!

+0

在Localizable.strings文件中显示标题,msg和ok。 –

+0

in localizable,strings(English) “title”=“恭喜!”; “msg”=“你已经完成了所有的关卡”; “ok”=“明白了”; in localizable.strings(法语) “title”=“Félicitations!”; “msg”=“Vous avezterminétous les niveaux”; “ok”=“COMPRIS” –

+0

删除应用程序和清理,而不是重新运行。 –

解决方案1:

执行下列操作步骤。

  1. 清理项目
  2. 删除应用程序从设备/模拟器
  3. 如果模拟器 - 复位。
  4. 删除派生文件(XCode> Window> Projects>派生数据删除)
  5. 安装应用程序,它会工作。

我认为它只是缓存问题。

解决方案2:

NSLocalizedString默认使用Localizable.strings文件。更改您的File.strings名称,然后重试。

NSLocalizedStringFromTable(@“Message”,@“File”);

+0

伟大..解决方案2为我工作! 我正在使用NSLocalizedString但NSLocalizedStringFromTable(@“消息”,@“文件”,评论);做到了这个把戏 –

+0

我的快乐:)快乐编码。 –

+0

伟大的@VS它的工作:p –