参考
[1]http://www.raywenderlich.com/2876/how-to-localize-an-iphone-app-tutorial
app的本地化,除了app名称的本地化,还包括程序中使用文字的本地化、xib资源的本地化(按钮等)、图片资源的本地化,本文分别介绍这三者的本地化
1.使用文字的本地化
1)在工程文件中右击,”new file“,选择string File,创建 Localizable.strings 文件。
1.1)如果用NSLocalizedString 那么一定要使用Localizable.strings 文件名,
因为#define NSLocalizedString(key, comment) \
[[NSBundle mainBundle] localizedStringForKey:(key) value:@"" table:nil]
其中table传的值为nil,就是默认table,而系统默认table就是Localizable.strings 此文件。如果修改为其他文件名,比如xxx.strings,那么应该使用 NSLocalizedStringFromTable(@"KEY",@"xxx",nil);来本地化。xxx没有后缀.strings
1.2)如果需要使用其他目录的本地化文件,有可能你不想根据手机的语言来判断使用哪种本地化,而希望自己用开关控制。
此时,可以使用NSLocalizedStringFromTableInBundle ,这时你需要根据目标目录创建NSBundle,另外bundle其实就是一个目录。
#define NSLocalizedStringFromTableInBundle(key, tbl, bundle, comment) \
[bundle localizedStringForKey:(key) value:@"" table:(tbl)]
2)为 Localizable.strings 创建中文的本地化
3)在Localizable.strings(chinese)中修改TITLE 和KEY字段,修改设备的语言为”中文“,运行后结果如下
2.xib资源的本地化
3图片资源的本地化
然后在en.lproj和zh-Hans.lproj使用同名但不同内容的图片即可。