【问题标题】:CocoaTouch : Localized Application Randomly Changing LanguageCocoaTouch:本地化应用程序随机更改语言
【发布时间】:2009-06-28 19:55:09
【问题描述】:

我遵循 Apple 的有关本地化 iPhone 软件的文档,使用 genstrings ruby​​ 脚本创建我的字符串文件,并本地化了我的所有 nib 文件。我还查看了 Apple 的留言板和网络,试图找到解决方案。

我已确保所有字符串文件都是 UTF-16,并将我的构建设置“字符串文件输出编码”更改为 UTF-16,但在模拟器和设备上,本地化会不断切换,即使

NSArray* languages = [[NSBundle mainBundle] preferredLocalizations];
NSString* preferredLang = [languages objectAtIndex:0];

正确输出用户选择的语言。是我遗漏了什么,还是这只是一个错误?

【问题讨论】:

  • 如何切换?在给定的运行中,所有内容都以相同的语言出现吗?你用什么代码来加载本地化的字符串?
  • 我有两个字符串文件,一个在文件夹 de.lproj 中,另一个在 en.lproj 中,在这些文件夹中是 Localizable.strings 文件夹(两者同名(可能是问题) )。该文件夹内部是一个具有各自名称 de 和 en 的文件。该文件内是字符串。每次运行时语言都是一致的,它只是随意选择一个。我正在使用 NSLocalizedString(@"stringhandle",nil);

标签: iphone cocoa-touch localization string


【解决方案1】:

从项目中删除文件夹(仅删除参考)并将 en.lproj 文件夹中的 localizable.strings 文件添加到项目(不是文件夹)。现在右键单击该文件单击获取信息并添加您的本地化想。现在您将在 localizable.strings 文件中看到 en 和 de。现在运行项目。为我工作!

【讨论】:

    猜你喜欢
    • 2016-10-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-09
    相关资源
    最近更新 更多