Ste*_*lla 26 xcode localization ios
我错误地从项目的信息中删除了项目的本地化.故事板和相关语言都被删除了.
我从之前的文件中找回了故事板,但是当我想添加一个新的本地化时,弹出一个窗口并要求我" 选择文件和参考语言来创建英语本地化 ",并且根本没有资源文件.
如何添加本地化?
Cam*_*mer 47
当您删除本地化时,有时您可能会遇到无法在Xcode中添加任何本地化的情况.转到命令行并在项目中的某处创建一个带有lproj扩展名的ISO 639-1双字母语言缩写文件夹.
例如:
${SRCROOT}/Resources/Translations/nb.lproj
Run Code Online (Sandbox Code Playgroud)
要么
${SRCROOT}/Resources/Translations/en.lproj
Run Code Online (Sandbox Code Playgroud)
在文件夹中创建一个名为的空文件Localizable.strings,并将此文件添加到项目中.不要添加.lproj文件夹,只添加内容.然后,当您返回项目文件时,您将看到本地化下的语言.现在,当您添加此项时,您应该在项目中看到本地化.
如果添加的文件(如故事板)旁边没有复选框,表示该语言本地化的一部分,则可能需要通过另一种语言对其进行四舍五入.为此,请在项目中添加新语言.它应该提示您将现有的本地化文件复制到新语言.然后删除损坏的本地化并重新添加.
作为一个具体示例,我将nb.lproj目录中的storyboard添加到项目中.挪威语Bokmål出现在项目中,但故事板检查器中语言的复选框不允许我添加它.我在项目中创建了nb_NO,它促使我复制了故事板.然后故事板检查了该复选框.我删除了'nb'本地化并重新添加了它.现在一切都是我想要的方式.
小智 5
我不得不解决同样的问题,并找到了一个解决方案:
您需要在 finder 中找到您的 *.xcodeproj 文件并将其作为容器打开(ctrl+单击它,您将在上下文菜单中看到它)
在这里你可以看到 project.pbxproj 文件,在 Xcode 中打开它。它的大(但仍然可读的文件)。(在开始之前,最好在保存点制作一些副本)
现在它的任务是将缺少的语言添加到这个文件中,它完成了。(你可以在其他具有本地化的项目上尝试它)。
有一段你需要添加。在这个文件中搜索这个/* End PBXSourcesBuildPhase section */(它在缺少本地化段落之前的段落)并在之后添加如下内容:
/* Begin PBXVariantGroup section */
27548D921611B0BE008EA1CD /* Localizable.strings */ = {
isa = PBXVariantGroup;
children = (
27548D941611B0BE008EA1CD /* en */,
);
name = Localizable.strings;
path = ../Code;
sourceTree = "<group>";
};
/* End PBXVariantGroup section */
Run Code Online (Sandbox Code Playgroud)
你必须先做一些改变。查看27548D921611B0BE008EA1CD本地化文件(或一些xib文件,或其他可本地化文件...)的长号,其ID,如果项目中没有,只需将一些Localizable.string文件添加到项目中,重新打开(或刷新)这个project.pbxpro,找到这个Localizable.string你应该会找到这样的东西:
275490591611B0BE008EA1CD /* Localizable.strings in Resources */
这就是您需要在本地化段落中替换的内容
您还需要对路径参数和源树进行正确的设置。这两个在 xcode 的文件检查器中是可读的。
“sourceTree”参数是位置 - 主要是它相对于组 sourceTree = "<group>";
路径是从组到文件的相对路径(如果你不知道,尝试在不同的项目中制作一些本地化文件并查看project.pbxpro,这一切都有效)
在此之后,您可以保存 project.pbxpro,您应该在 xcode 信息部分中看到“en”本地化,您可以添加更多本地化和所有其他本地化内容。
| 归档时间: |
|
| 查看次数: |
8323 次 |
| 最近记录: |