NSLocalizedString()从Localizable.strings本地化之前获取缓存条目

时间:2015-07-23 17:00:50

标签: ios xcode swift localization localizable.strings

我正在构建我的第一个IOS iphone 6应用程序。

我在让Xcode从本地化版本的Localizable.strings中获取键/值对时遇到问题。在我本地化Localizable.strings文件之前,NSLocalizedString()方法似乎返回了缓存条目。

  1. 您可以在下面的屏幕截图中看到,当我只有一个Localizable.strings文件时,代码会选择我正在寻找的键/值对 https://www.evernote.com/l/AAIi1y9qYi5H9o_SiUduTECZJZMvYr5FCfw
  2. 当我尝试本地化Localizable.strings文件(即具有文件的Base,English,中文版本)时,NSLocalizedString()返回我有一个Localizable.strings文件时的键值。 https://www.evernote.com/l/AALbxEQwnuVFHaHMLduAgZw5N1op8o2Alc8 我知道这种情况正在发生,因为当我在所有三个文件中更改相同键的值时,它仍然返回旧值。
  3. 我也试过

    1. 重置模拟器设置(这表明缓存位于构建中)
    2. 重新启动模拟器/ Xcode
    3. 在我的项目中搜索旧值,找不到NSLocalizedString返回的旧值
    4. 将密钥更改为其他内容,NSLocalizedString只返回此情况下的密钥
    5. 重新创建Localizable.strings文件并使用File Inspector再次进行本地化,每次都会发生同样的事情
    6. 我真的没有想法了。我正在使用Xcode:版本6.3.1(6D1002),任何帮助将不胜感激:)

1 个答案:

答案 0 :(得分:1)

原来我必须清理构建。转到产品 - >在xcode中清理。