在 xcode 5 中本地化 Localizable.string 会破坏整个文件
Posted
技术标签:
【中文标题】在 xcode 5 中本地化 Localizable.string 会破坏整个文件【英文标题】:Localising Localizable.string in xcode 5 breaks the whole file 【发布时间】:2013-11-14 14:25:52 【问题描述】:每当我尝试本地化我的 Localizable.strings 文件时,它似乎会中断,Xcode 将不再使用它。
我首先创建一个新的单视图应用程序。默认情况下,应用程序设置为使用基本本地化,并且英语已设置为主要语言。 在我的 ViewController.m 中,我将以下代码添加到 viewDidLoad 方法中
NSString *text = NSLocalizedString(@"someKey", @"some comment");
NSLog(@"%@", text);
当我运行应用程序时,它会记录“someKey”,因为没有“Localizable.strings”文件。 然后我创建 Localizable.strings 文件并将以下内容添加到文件中:
"someKey" = "Some value";
当我再次运行应用程序时,它会按预期注销“某些值”。
我希望我的应用也使用挪威语,因此我将语言添加到本地化列表中。
我将 ios 模拟器的语言变成了挪威语,然后再次运行该应用程序。由于我尚未本地化“Localizable.strings”,因此该应用仍会记录“某些值”。
然后单击“Localizable.strings”并单击实用程序窗格中的“Localize”按钮。我选择“英语”作为语言,然后单击“本地化”。该文件尚未本地化为英文,而是“Base”。我运行该应用程序,它仍然记录“一些值”。
接下来我添加挪威本地化。该文件现在必须为“子文件”,一个用于基础文件,一个用于挪威语。我将“someKey”值更改为“Norwegian”和“Base”。
现在,当我运行应用程序时,即使应用程序中不再存在该文本,它仍然会注销“某些值”。我可以重置 iOS 模拟器,清理并重新启动 Xcode,但我的应用仍然会注销“某些值”。
我不知道发生了什么!有人吗?
【问题讨论】:
你是什么意思>'我将“someKey”值更改为“Norwegian”和“Base”。'?这没有意义…… 【参考方案1】:1,检查是否所有引号 " 在您的 local.strings 文件中配对 2、清理(command+shift+k)并运行
如果找不到指定的语言字符串,应用程序将使用默认语言字符串。
【讨论】:
以上是关于在 xcode 5 中本地化 Localizable.string 会破坏整个文件的主要内容,如果未能解决你的问题,请参考以下文章