一个上午在琢磨xcode多语言问题,baidu上的基本是老版本的解决方案,好不容易找了新版本的以下: xcode
最近 Xcode 又更新到了 4.4 版本,有一项新特性是:
• New localization workflow can share a single base .xib file for multiple locales on OS X.
这项改动使 L10n 的流程发生了些些变化,新的 workflow 以下: app
在 Xcode 左侧的 Project Navigator 中选中须要 L10n 的 .xib 文件,而后打开右侧的
File inspector 面板,会看到下面的 Localization 设置,这里已经没有了 + – 号。
wordpress
点击 Make localized,会出现下图,只有一个 English 选项,无所谓,点 Localize。
.net
此时,File inspector 面板会变成这样,仍是没有 + – 号,好捉急。
code
这时点选 Project Navigator 中的 Project Name,并在右侧点击 Info 标签,找到下面的Localizations 部分,终于看到可爱的 + -号了。
blog
点击 + 号,选择要增长的语言,这里选 Spanish (es)。
图片
在新窗口中选择刚才那个 .xib 文件,点击 Finish。
ip
此时的 File Inspector 面板也增长了一个 Spanish。
get
在 Project Navigator 中,点击 .xib 前面的小三角,如图:
从原来的 .xib 文件中提取字符串,并生成 .strings 文件:
ibtool –generate-strings-file ~/Desktop/XXXViewController.strings XXXViewController.xib
基于 en.lproj 中的 .xib 建立 es.lproj 目录下的新 .xib,并使用刚才生成的 .strings 替换全部字符串:
ibtool –strings-file ~/Desktop/XXXViewController.strings –write /project_path/es.lproj/XXXViewController.xib /project_path/en.lproj/XXXViewController.xib
运行 ibtool 命令时,如遇到以下错误:
Error: No developer directory found at /Developer. Run /usr/bin/xcode-select to update the developer directory path.
那么先运行命令 sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer
便可解决。
大功告成!