NSLocalizedString() 从 Localizable.strings 本地化之前获取缓存条目
NSLocalizedString() picking up cached entry from before Localizable.strings is localized
我正在构建我的第一个 IOS iphone 6 个应用程序。
我在让 Xcode 从 Localizable.strings 的本地化版本中选取 key/value 对时遇到问题。 NSLocalizedString() 方法似乎在我本地化 Localizable.strings 文件之前返回缓存条目。
- 您可以在下面的屏幕截图中看到,当我只有一个 Localizable.strings 文件时,代码可以很好地找到我正在寻找的 key/value 对
https://www.evernote.com/l/AAIi1y9qYi5H9o_SiUduTECZJZMvYr5FCfw
- 当我尝试本地化 Localizable.strings 文件(即文件的基础版、英文版、中文版)时,NSLocalizedString() returns 我有一个 [=42= 时的键值] 文件。
https://www.evernote.com/l/AALbxEQwnuVFHaHMLduAgZw5N1op8o2Alc8
我知道会发生这种情况,因为当我在所有三个文件中更改同一个键的值时,它仍然返回旧值。
我也试过了
- 重置模拟器设置(这表明缓存在构建中)
- 正在重新启动 simulator/Xcode
- 在我的项目中搜索旧值,找不到 NSLocalizedString 返回的旧值
- 将密钥完全更改为其他内容,NSLocalizedString 只是 returns 在这种情况下的密钥
- 重新创建 Localizable.strings 文件并使用文件检查器再次对其进行本地化,每次都会发生同样的事情
我真的运行没主意了。我正在使用 Xcode:版本 6.3.1 (6D1002),任何帮助将不胜感激:)
原来我必须清理构建。在 xcode.
中转到产品 -> 清洁
我正在构建我的第一个 IOS iphone 6 个应用程序。
我在让 Xcode 从 Localizable.strings 的本地化版本中选取 key/value 对时遇到问题。 NSLocalizedString() 方法似乎在我本地化 Localizable.strings 文件之前返回缓存条目。
- 您可以在下面的屏幕截图中看到,当我只有一个 Localizable.strings 文件时,代码可以很好地找到我正在寻找的 key/value 对 https://www.evernote.com/l/AAIi1y9qYi5H9o_SiUduTECZJZMvYr5FCfw
- 当我尝试本地化 Localizable.strings 文件(即文件的基础版、英文版、中文版)时,NSLocalizedString() returns 我有一个 [=42= 时的键值] 文件。 https://www.evernote.com/l/AALbxEQwnuVFHaHMLduAgZw5N1op8o2Alc8 我知道会发生这种情况,因为当我在所有三个文件中更改同一个键的值时,它仍然返回旧值。
我也试过了
- 重置模拟器设置(这表明缓存在构建中)
- 正在重新启动 simulator/Xcode
- 在我的项目中搜索旧值,找不到 NSLocalizedString 返回的旧值
- 将密钥完全更改为其他内容,NSLocalizedString 只是 returns 在这种情况下的密钥
- 重新创建 Localizable.strings 文件并使用文件检查器再次对其进行本地化,每次都会发生同样的事情
我真的运行没主意了。我正在使用 Xcode:版本 6.3.1 (6D1002),任何帮助将不胜感激:)
原来我必须清理构建。在 xcode.
中转到产品 -> 清洁