iOS本地化不一致

时间:2011-03-10 16:08:47

标签: xcode ios localization

我是第一次本地化iPhone应用程序。我已将所有字符串放入Localizable.strings文件中,并通过我的代码中的NSLocalizedString访问它们。工作良好。 接下来,我有一个名为info.html的文件,其中包含我用作关于框的UIWebView的内容。我把它放在语言文件夹(en.lprojde.lproj)中,并将它们添加到我的Xcode资源中。 现在,在Simulator中,字符串和html文件都以适当的语言显示。 但是,在设备上,当html文件保持未翻译时,字符串显示为本地化。

这是Simulator和Device之间奇怪的不一致!有人知道解决方法吗? (......除了违反本地化系统,并使用NSLocalizedString手动调用de_info.htmlen_info.html等。)

2 个答案:

答案 0 :(得分:7)

首先尝试删除该应用。

当您使用Xcode部署到设备(或模拟器)时,仅添加资源,而不是删除资源 现在很可能你有三个html文件。一个位于de文件夹中,一个位于en文件夹中,另一个位于根文件夹中。

如果它在那里iOS更喜欢根文件夹中的那个。

作为一般规则:当你从项目中删除(或者就像在这种情况下移动它们)资源时,你应该从设备或模拟器中删除应用程序。

答案 1 :(得分:4)

另外一个补充:我还需要从我当前的构建目录中删除该应用程序才能使其正常工作(否则,设备上已删除的应用程序会再次被错误的版本替换)。

在XCode中,您可以在“Build”菜单中按“alt”键,然后您可以选择清除整个构建目录。

这终于为我解决了这个问题。叹息...