我正在寻找我在互联网上找不到的信息。我想知道NSLocalizedString出现在哪个iOS版本中? (也许它自iOS的第一个版本以来就在这里?)
我也想知道在.xib中使用本地化的情况,在这种情况下使用NSLocalizedString?
我问这个问题是因为我正在使用.xib文件和NSLocalizedString中的本地化工作iOS项目,而且我真的不知道为什么使用这两种方法... (这是一个古老的项目,这就是我问第一个问题的原因^^)
最后一个问题,对于一个新项目,这两种方法中哪一种是您首选的方法?
对不起所有这些问题,谢谢你的回答! =)
答案 0 :(得分:0)
当我们想要在UI上本地化元素时,例如,当您想要显示具有特定UIButton的本地化文本的不同图像时,使用使用xib文件的本地化。
您可以使用本地化的xib文件来实现此目的。
每种语言都有单独的xib文件。
当您从控制器NSCocalizedString设置UI上的任何文本时。
我希望这会有所帮助。
答案 1 :(得分:0)
NSLocalizedString
was first available in 10.0
所以我以编程方式本地化w / NSLocalizedString
,因为这样我可以将所有字符串放在一个位置。
而不是通过.xib
本地化生成,因为您将拥有每个xib的字符串文件。
但,如果您有.xib
,则表示您无法以编程方式进行修改(即您没有将自定义类设置为file's owner
),然后您无法以编程方式设置NSLocalizedStrings
。在这种情况下,您必须通过.xib
生成字符串文件。
此外,访问与.xib
关联的字符串文件稍微困难一些,因为它与.xib
答案 2 :(得分:0)
NSLocalizedString自iOS 1以来就存在。
基本上,你需要NSLocalizedString用于所有动态创建的字符串。
在新项目中,我建议使用AutoLayout和Base Localization。 有一个.xib文件和所有本地化 - 以及布局调整 - 在运行时通过.strings文件执行
答案 3 :(得分:0)
这个问题可能死了,但我跳到这里寻找一种定位xib字符串的方法,而此页面是第一个结果。
您可以同时使用NSLocalizedString和xib。看看这个答案:https://stackoverflow.com/a/21443515/907720在这里详细讨论:https://medium.com/zendesk-engineering/ios-how-to-add-adaptive-constraints-to-support-a-universal-app-273663475b12