我有一个需要翻译成不同语言的iPhone应用程序。目前支持2种语言:德语和英语。问题是本地化只能每隔一段时间运行一次,大部分时间我只是从NSLocalizedString获取属性。
如果我将Localizable.string文件的编码更改为UTF-8并返回到UTF-16,它确实可以工作但只有一次,然后它会立即更改为不工作。
目前正在Xcode 4.0.1下工作
其他人遇到此错误或是否有修复?
提前致谢:)
答案 0 :(得分:8)
有同样的问题。
我也在使用ShareKit。我刚刚删除了那些本地化字符串(ShareKit),没有更多麻烦:)
我觉得这个问题不是关于ShareKit,而是关于在项目中有其他的localizedStrings。检查您是否删除它们(复制+粘贴到您的本地化字符串中)。这应该可以解决您的问题。
答案 1 :(得分:2)
想出我的应用程序。
我使用的是ShareKit。 Sharekit附带了自己的Localizable.strings。在运行时,可能存在关于应该使用哪一个的冲突。
如果您的应用有多个字符串文件被复制,请删除其他文件。
答案 2 :(得分:1)
确保翻译文件中的每一行都以;结尾。它们很容易错过,如果你错过了一个,它之后的所有字符串都不会被使用。您将获得类似于您所描述的NSLocalizedString属性。
虽然在切换编码之后它工作一次并没有多大意义。这似乎有点奇怪。但这是检查本地化字符串何时不起作用的第一件事。