0

我创建了一个新的 Xcode 项目并尝试设置字符串本地化。

我添加了一个名为“localization.strings”的新文件,其内容如下。

"登录" = "英文文本2";

我在最新版本的 Xcode 中的 Project > Info 部分添加了第二个本地化。

然后,我勾选右侧的框,为本地化.strings 文件添加法语。添加后,我可以运行/构建应用程序,但字符串不再链接到该文件。

例如,如果我将上面的原始英文版本更新为“testing text eng”,它仍然显示原始英文文本2。

知道为什么会发生这种情况吗?该应用程序太大而无法发布,并且没有构建错误,文件没有损坏、丢失、编码不正确。

4

2 回答 2

5

您需要进行干净的构建并从模拟器和/或您的设备中删除应用程序,然后一切正常。您只需执行一次。

在添加任何本地化之前,您的字符串文件将最终位于应用程序包的根目录中,例如MyApp.app/Localizable.strings. 然后,当您运行应用程序时,这将被复制到模拟器和/或您的设备中。

添加本地化后,文件的内容将移动到特定于本地化的子目录中,例如MyApp.app/en.lproj/Localization.stringsMyApp.app/fr.lproj/Localization.strings。但是根包中的旧文件仍然在模拟器和您的设备上徘徊,并且比其他文件更早被发现。所以做一个干净的构建,从模拟器和你的设备中删除应用程序,旧文件将被删除。

于 2012-08-06T13:12:40.963 回答
0

这不是唯一可能发生的问题。我遇到了另一种情况:两个具有相同名称的文件:“Localizable.strings”。我在库文件夹中有一个,在主项目文件夹中有一个。本地化系统只使用其中之一,而不是同时使用两者。我通过删除不需要的问题解决了这个问题。

于 2015-05-20T11:09:42.783 回答