Cocoa程序支持多国语言环境

当你的Cocoa程序面向多个不同语言国家的用户时候,通常需要配置你的应用的多国语言环境,而不是单独编译几个不同的语言版本。

1. nib/xib多国语言支持

nib或xib文件,支持多国语言很简单,只需在你的nib/xib文件右键点击,选择Get Info菜单。 点击最下面的AddLocalization按钮

在弹出的窗口中输入你要支持的语言编号, 如zh_CN(简体中文)、zh_TW 或者zh_HK(繁体中文),其他几个常用的国家语言可以不是编号而是国家语言名称,如:
日语:Japanese
德语:German
西班牙语:Spanish
法语:French

之后编辑nib/xib文件中的文字,图片后保存就可以了。

2. 程序中引用多国语言

建立Localizable.strings文件

在项目中点右键,选择Add->New File
在列表中选择Strings File,也可以取别的名字,比如MyApp.strings

这个文件如果包含非拉丁字符的话,一定要保存为utf-8格式,如上图中的File Encoding中的设置。

.strings文件的内容可以是标准的plist格式,也可以是旧的列表格式:

1
2
3
4
5
6
7
8
9

 version="1.0" encoding="UTF-8"?>

 version="1.0">
>
    >mykey>
    >myvalue>
        ….
>
>

字符串如果要换行的话,直接按回车换行,不要写成n这种形式。

或者直接使用旧式的列表格式:

1
2

"mykey" = "myvalue";
…

注意每行后面加分号。

如果你使用的是Localizable.strings,那么你在程序中可以这样获取字符串:

1

NSLocalizedString(@"mykey", nil)

如果你使用的是自定义名字的.strings,比如MyApp.strings,那么你在程序中可以这样获取字符串:

1

NSLocalizedStringFromTable (@"mykey",@"MyApp", nil)

这样即可获取到”mykey”这个字符串,可以是任何语言。

你可能感兴趣的:(IOS开发)