在Xcode 4中移动本地化文件夹
我最近从Xcode 3升级到Xcode 4.2,并迁移了现有的iOS应用程序以使用这个新版本。 这个应用程序是本地化的,我现在想添加另一种语言。
在Xcode 4下,当我添加新的本地化时,它会在项目根目录中创建特定于国家/地区的文件夹。 例如:
/fr.lproj
但是,我以前的所有语言文件夹都在Resources子文件夹中。 如:
/Resources/de.lproj /Resources/en.lproj
对于我的生活,我无法弄清楚如何让Xcode 4将新语言文件夹移动到Resources
。 我找不到任何GUI选项。 如果我使用Finder移动物理文件夹,Xcode只会将引用更改为红色,但是我无法修复它。
有人可以帮忙吗?
更新:
以下是一些展示问题的截图(这次使用中文):
文件列表:
该文件的标识部分。 请注意,我无法更改它:
找到了解决方案。 它不漂亮,但它的工作原理。
这是我做的:
- 在Finder中查看
.xcodeproj
文件夹的内容 - 编辑
project.pbxproj
文件 - 在文件中搜索
.lproj
- 更改
path =
部分以包含path =
的Resources
部分。 - 保存,然后重新启动Xcode
这使所有内容平滑,并允许Localization驻留在Resources子目录中。
这是一种如何解决它没有编辑.pbxproj文件(Xcode 4.6.3)的方法:
- 选择本地化父文件(Localizable.strings)
- “位置(相对于组)”下的“实用程序”窗格>“标识和类型”>选择路径图标并为本地化文件设置所需的新位置
- Finder>将所有en.lproj,fr.lproj等子文件夹移动到所选文件夹
UPD :在Xcode 8中不起作用:(
这种方式也适用于Xcode 5.1(希腊语示例):
- 在Finder中的
Localizable.strings
文件中创建Resources/el.lproj
文件夹 - 在Xcode中打开项目文件,然后右键单击
Resource
文件夹 - 单击“将文件添加到…”上下文菜单项
- 从
Resources/el.lproj
文件夹中选择Localizable.strings文件 – >确定。 希腊语Localizable.strings
将自动添加到Localizable.strings
文件中。
您可以使用相同的方法为xib文件添加本地化。
磁盘上的文件结构在Xcode中大多不相关。 只需在Finder中移动目录,然后在Xcode中你可以:(a)删除fr.lproj目录并重新添加它,或者(b)选择红色条目,打开右侧(属性)面板,然后在顶部你应该看到路径。 将路径更改为新位置,它将返回黑色。