iOS 开发 初级:应用多语言化的方法
2013-04-07 11:55
169 查看
要使应用多语言化在Xcode中实现起来其实是相当容易的。对于大多数的应用,多语言化主要在于文字的多语言化,其他的诸如图形,界面的多语言化一般的应用并不会涉及。当然,这些在Xcode中都可以实现。下面主要介绍一下文字多语言化的方法。
Step 1:为应用添加多语言版本
这个很简单,在project中info下有localizations,点击+添加所需要的版本,这时会弹出对话框显示要添加语言版本的内容。
这里面包含了storyboard,infoPlist.strings。如果要实现产品名称的多语言化,应包含infoPlist.strings。同时也可以看到我们可以直接在storyboard中实现比如按钮,图片的多语言。对于Localizable.strings,是针对文字的多语言,在下面会讲到。这个要手动添加。
Step 2:编程中的变化
要实现多语言,在编程中就不能直接用NSString 了,而是使用
NSLocalizedString(key, comment)
介绍一下基本用法:key是对应显示的NSString,comment则为注释。基本的原理就是有不同版本的Localizable.strings,相同的注释在不同语言版本中key不一样,这样显示的时候不同的语言界面显示的语言就不一样。
Step 3:获取Localizable.strings
打开Terminal终端:
然后将地址换到工程所在文件夹。基本方法是输入“cd ”然后将工程文件夹拉进其窗口。
然后输入 genstrings ./LocalizeMe/*.m 这里LocalizeMe是我这里例子的项目名称。要改成你项目的名称。 回车,然后打开工程文件夹,你就可以看到Localizable.strings文件,将其拉进Xcode项目中。
打开文件可以看到如下类似内容,Localizable.strings 包含你的项目中所有使用NSLocalizedString的内容。
这里的注释就是comment,而下面的“Three”=“Three”,左边的字符串就是Key。
Step 4:编辑Localizable.strings
如果你这时候还没有针对Localizable.strings这个文件进行多语言化也没关系。如下图:
点击这个文件,然后打开属性,可以看到右边有Localization选项,比如我要添加中文版,那就在Chinese上打钩,这样这个文件就会自动添加一个Chinese版本。
接下来就是点击这个Chinese版本进行编辑:
把每个对应的key的内容改成中文的就OK了。
现在运行程序,如果手机是中文的,那么显示的就是中文内容,如果是英文的,那就是英文内容。
Step 5:应用名称多语言化
这个很简单,在infoPlist.strings中输入
CFBundleDisplayName = "应用名";
就可以了。
以上就是最基本的实现多语言化的方法。要更进一步的话,还有数据类型多语言化,比如货币,时间等等, 这些内容有待深入研究!
Step 1:为应用添加多语言版本
这个很简单,在project中info下有localizations,点击+添加所需要的版本,这时会弹出对话框显示要添加语言版本的内容。
这里面包含了storyboard,infoPlist.strings。如果要实现产品名称的多语言化,应包含infoPlist.strings。同时也可以看到我们可以直接在storyboard中实现比如按钮,图片的多语言。对于Localizable.strings,是针对文字的多语言,在下面会讲到。这个要手动添加。
Step 2:编程中的变化
要实现多语言,在编程中就不能直接用NSString 了,而是使用
NSLocalizedString(key, comment)
介绍一下基本用法:key是对应显示的NSString,comment则为注释。基本的原理就是有不同版本的Localizable.strings,相同的注释在不同语言版本中key不一样,这样显示的时候不同的语言界面显示的语言就不一样。
Step 3:获取Localizable.strings
打开Terminal终端:
然后将地址换到工程所在文件夹。基本方法是输入“cd ”然后将工程文件夹拉进其窗口。
然后输入 genstrings ./LocalizeMe/*.m 这里LocalizeMe是我这里例子的项目名称。要改成你项目的名称。 回车,然后打开工程文件夹,你就可以看到Localizable.strings文件,将其拉进Xcode项目中。
打开文件可以看到如下类似内容,Localizable.strings 包含你的项目中所有使用NSLocalizedString的内容。
这里的注释就是comment,而下面的“Three”=“Three”,左边的字符串就是Key。
Step 4:编辑Localizable.strings
如果你这时候还没有针对Localizable.strings这个文件进行多语言化也没关系。如下图:
点击这个文件,然后打开属性,可以看到右边有Localization选项,比如我要添加中文版,那就在Chinese上打钩,这样这个文件就会自动添加一个Chinese版本。
接下来就是点击这个Chinese版本进行编辑:
把每个对应的key的内容改成中文的就OK了。
现在运行程序,如果手机是中文的,那么显示的就是中文内容,如果是英文的,那就是英文内容。
Step 5:应用名称多语言化
这个很简单,在infoPlist.strings中输入
CFBundleDisplayName = "应用名";
就可以了。
以上就是最基本的实现多语言化的方法。要更进一步的话,还有数据类型多语言化,比如货币,时间等等, 这些内容有待深入研究!
相关文章推荐
- (转)iOS 开发 初级:应用多语言化的方法
- iOS 开发 初级:应用多语言化的方法
- iOS 开发 初级:应用多语言化的方法
- iOS 开发 初级:应用多语言化的方法
- iOS 开发 初级:应用内购买 In-App Purchase
- IOS]iphone开发之UIImage应用与内存管理,UIImage加载图像方法
- iOS开发那些事--编写OCUnit测试方法-应用测试方法
- iOS 开发 初级:应用内购买 In-App Purchase
- 解析iOS应用的UI开发中懒加载和xib的简单使用方法
- iOS开发---在 iOS 应用中直接跳转到 AppStore 的方法
- IOS]iphone开发之UIImage应用与内存管理,UIImage加载图像方法
- ios开发--给应用添加新的字体的方法
- iOS 开发 初级:应用内购买 In-App Purchase
- iOS开发那些事--编写OCUnit测试方法-应用测试方法
- 转:ios开发--给应用添加新的字体的方法
- (iPhone/iPad开发)iOS应用检查更新的最优方法
- iOS应用开发中实现页面跳转的简单方法笔记
- 在Xcode5环境下、开发iOS 7应用时,彻底隐藏Status bar的方法
- IOS 初级开发入门教程(三)探究应用及视图的生命周期变化
- iOS开发那些事--编写OCUnit测试方法-应用测试方法