坑姐的ios6的国际化

一. 先说说以前怎么做国际化

1. 项目名称国际化

1.1 在工程项目种,单击InfoPlist.strings,查看右边的属性,在Localization栏添加语言。

坑姐的ios6的国际化_第1张图片    坑姐的ios6的国际化_第2张图片

1.2 添加完成后打开对应语言文件,分别添加

CFBundleDisplayName="China";

CFBundleDisplayName="中国";

坑姐的ios6的国际化_第3张图片

运行,如果此时你的模拟器是中文,你会看到你的程序名称变成了 中国:

来到设置里把语言设置成 English。此时程序名称变成了:China

2、内容国际化

2.1新建Localization.strings文件

坑姐的ios6的国际化_第4张图片      坑姐的ios6的国际化_第5张图片

2.2 添加语言和1.1环节一样。

2.3 添加语言内容

添加"Key"="value"; 然后使用时用NSLocalizedString(@"key", @""); 读取内容.

二. 坑姐的ios6国际化

我想大家和我的问题一样,当使用国际化时,之前版本Xcode上新建Localizable.strings后,添加语言的“+”号不见了,在网上查了一下,原来Apple把这个“+”号换地方了。

首先新建一个名为Localizable.strings的资源文件

坑姐的ios6的国际化_第6张图片


完成后选中该文件,在属性选择器中可以看到多了个按钮:



点击这个按钮后,出现国际化语言选择框,但只有一个English的选项:

坑姐的ios6的国际化_第7张图片

点击Localize按钮,这时只支持英语。Xcode4.5之前的版本会在属性选择器里面有个“+”号用来添加其他语言支持,现在没了,其实是在别的地方。点击工程根目录,并选择PROJECT,然后选择INFO选项卡,底部我们就看到了Localizations:

坑姐的ios6的国际化_第8张图片

点击“+”号选择一门语言添加上,我这里选的是Chinese,ok,完成了,再看Localizable.strings文件,就多了两个子文件,分别支持英文和汉语:

在属性选择器中也看到了English和Chinese:

这样,就完成了在Xcode4.5上国际化的设置和操作,基本使用和前面一样。

获取系统当前语言

NSString *identifier = [[NSLocale currentLocale] localeIdentifier]; // 比如Loacl是en_Zh
NSString *displayName = [[NSLocale currentLocale] displayNameForKey:NSLocaleIdentifier value:identifier]; // displayName = “中国”

附上官网地址:http://developer.apple.com/library/ios/#referencelibrary/GettingStarted/RoadMapiOSCh/chapters/InternationalizeYourApp/InternationalizeYourApp/InternationalizeYourApp.html

你可能感兴趣的:(国际化,iOS6,和以前不再一样)