1 将所有需要本地话的字符串用NSLocalizedString包装起来。
比如self.title = @"More"改为self.Title= NSLocalizedString(@"More", @"More Comment");
NSLocalizedString中有两个参数,第一个参数为要本地化的字符串,第二个参数为注释,可以为nil
2 打开终端,执行命令进到当前工程的所有.m文件所在的目录,比如:
cd /Users/UseName/Desktop/ApplicatiionName/ApplicatiionName/Classes
3 在终端下执行命令:
genstrings ./*.m
这里./表示当前目录,*.m表示所有的.m文件
执行命令后会出现一个Localizable.strings
4 将Localizable.strings拉到Xcode左侧的Supporting Files的文件夹下,点击Xcode顶部导航栏右侧View上面的第三个按钮,会在Xcode的最右侧出现一个新的面板(若此面板本来就已出现则不用点击按钮),如下图所示:
5 右击上一步拉进来的Localizable.strings,点击上图中的Localization下的Make localised...按钮,
然后在点击Localizable.strings,会在右侧看到下图:
(注意:这一步不同版本的编译器的操作过程会有差别,上述操作是在Xcode4.5中进行的)
6 上图中的English是默认创建的,因为英语是iOS程序的基础语言。把上图中的Chinese勾起来,会看到左侧Localizable.strings变成文件夹,点击展开后出现两个文件:Localizable.strings(English)和Localizable.strings(Chinese)。Localizable.strings(Chinese)即中国区域的本地化语言文件。
7 点击Localizabel.strings(Chinese),出现的字符串如下图所示:
/* No comment provided by engineer. */
"Add new bookmark" = "Add new bookmark";
/* Back info */
"Back" = "Back";
/* Cancel info */
"Cancel" = "Cancel";
上面的注释行即第一步中NSLocalizedString的第二个参数中的内容。将右边的词语改为中文:
/* No comment provided by engineer. */
"Add new bookmark" = "添加书签";
/* Back info */
"Back" = "返回";
/* Cancel info */
"Cancel" = "取消";
8 进到系统设置-->通用-->多语言环境,把语言改为简体中文,把区域格式改为中国,看下程序运行的效果。
再把语言改为英语,把区域格式改为美国,看下程序运行的效果。