我有一个国际化的iPhone项目.在各种${lang}.lproj/InfoPlist.strings
文件中,我只有一把钥匙,CFBundleName = "My App Name"
.
这适用于单个目标,但我无法使其适用于多个目标.
我想InfoPlistMyApp.strings
为主目标提供几个翻译文件,以及精简版的几个文件.但我无法弄清楚如何设置它.该名字似乎在石头被设置,所以我不能动态地更换.InfoPlistMyAppLite.strings
InfoPlist.strings
有任何想法吗?
事实证明,如果费力的话,这很容易.您可以拥有多个InfoPlist.strings,每个目标一个启用,并且每个都可以国际化,只要每个集合位于不同的Xcode组中.
设置这样的目录结构:
.../AppName/ en.lproj/InfoPlist.strings <-- Contains CFBundleDisplayName it.lproj/InfoPlist.strings <-- ... ... .../AppNameLite/ en.lproj/InfoPlist.strings <-- ... it.lproj/InfoPlist.strings <-- ... ...
将这些文件导入Xcode组,如下所示:
右键单击"Groups&Files"(Xcode的左上角)并确保"Target Membership"可见,然后浏览目标,检查每个字符串是否启用了正确的字符串集.