即使字符串已翻译,NSLocalizedstring也会在模拟器中返回大写版本

问题描述

没什么大不了的,但是我注意到,当我运行模拟器并勾选复选框时 Localization Debugging在Xcode构建设置中,它向我展示了大写的单词,这些单词实际上已被Xcode翻译和识别。

示例: 我有多种语言,并且在所有语言中(甚至是EN中最基本的一种),它都显示(选中此选项- Localization Debugging ),将大写的表达式表示为Xcode / Simulator告诉我“嘿,我们没有找到本地化的字符串,因此我们以大写形式显示它,以便您了解它”,但有趣的是它显示了本地化的字符串本身。

有趣的是,它在我们的应用程序中以各种字符串组合显示此“错误”,示例编号。 2,对于瑞典文,它显示为20个不同的大写字符串,对于捷克文,它显示为10,对于英语15,等等...

我很高兴能显示翻译结果,但是我们用来本地化的Pod造成的这个“错误”(如果是错误或我们这边确实有问题)可以吗? Pod称为“ Localize_Swift”,其方法扩展了我们的String类型,如下所示:

extension String {
   var localize: String {
        return self.localized()
   }
}

因此,只要需要对字符串进行本地化,就会使用.localize(仅对于Localizable.strings,即使它是在项目中生成的,我们也不会使用Main.strings)。

正如所提到的,它并没有达到我们需要的范围,但是我对此感到很好奇。

感谢您的见解。

使用Xcode 11.7

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)