当你的Cocoa程序面向多个不同语言国家的用户时候,通常需要配置你的应用的多国语言环境,而不是单独编译几个不同的语言版本。
nib或xib文件,支持多国语言很简单,只需在你的nib/xib文件右键点击,选择Get Info菜单。 点击最下面的Add Localization按钮 caption id=”attachment_446” align=”alignnone” width=”300” caption=”xib添加多国语言支持”
/caption
在弹出的窗口中输入你要支持的语言编号, 如zh_CN(简体中文)、zh_TW 或者 zh_HK(繁体中文),其他几个常用的国家语言可以不是编号而是国家语言名称,如: 日语:Japanese 德语:German 西班牙语:Spanish 法语:French
之后编辑nib/xib文件中的文字,图片后保存就可以了。
建立Localizable.strings文件
在项目中点右键,选择Add->New File 在列表中选择Strings File,也可以取别的名字,比如MyApp.strings
这个文件如果包含非拉丁字符的话,一定要保存为utf-8格式,如上图中的File Encoding中的设置。
.strings文件的内容可以是标准的plist格式,也可以是旧的列表格式:
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
mykey
myvalue
….
字符串如果要换行的话,直接按回车换行,不要写成n这种形式。
或者直接使用旧式的列表格式:
"mykey" = "myvalue";
…
注意每行后面加分号。
如果你使用的是Localizable.strings,那么你在程序中可以这样获取字符串:
NSLocalizedString(@"mykey", nil)
如果你使用的是自定义名字的.strings,比如MyApp.strings,那么你在程序中可以这样获取字符串:
NSLocalizedStringFromTable (@"mykey",@"MyApp", nil)
这样即可获取到”mykey”这个字符串,可以是任何语言。