赞
踩
关于这个问题网上教程无数,但实现的过程中遇到点小麻烦
普通的本地化:
1.在Resources分类下新建文档(右鍵/Add/New File…)
2.在模板对话框中选择Other,然后再选择Strings File 或是 Empty File(我的xcode这一项跑到maxos标签下去了,而不是ios标签页下)
3.将文件保存名设置为Localizable.strings
4.在Localizable.strings 文件上按右键并选择 Get Info
5.点击信息界面的Make File Localizable,然后再将Tab标签切换到General
6.输入新的语言名称 zh 後按 Add,些时有English与zh,jp语言,你还可以增加其它语言.
在源代码中使用NSLocalizedString来引用国际化文件
xxlabel.text =NSLocalizedString(@"text1",@"");
生成key文件
打开Terminal,然后cd到工程所在的目录 cd ~/work/text1 然后
genstrings -o English.lproj ./classes/*.m
genstrings -o zh.lproj ./classes/*.m
genstrings -o ja.lproj ./classes/*.m
Localizable.strings会多一个三角,拉开会有刚刚添加的3种语言文件,在每个文件里添加要翻译的字符串,例如:“text1”=“text1”; “text1”=“文本1”; “text1”=“テキストの1“
对应该程序名字的本地化处理:
比如英语环境下,程序名字叫game,中文下叫游戏
这个需要写到info。plist的CFBundleDisplayName中去,在apple的官方文档:http://developer.apple.com/library/ios/#documentation/general/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html#//apple_ref/doc/uid/20001431-102193 有注释
要写到InfoPlist.strings里去。
方法一
1) 对Info.plist进行本地化,然后设置需要的语言(如简体中文zh_CN),设置语言对应的Localization native development region;
2)创建一个空文件,取名为InfoPlist.strings
3)对InfoPlist.strings进行本地化(Get Info -> Make Localization),然后设置需要的语言(简体中文zh_CN)
4) 编辑不同的InfoPlist.strings文件,设置显示名字,如:CFBundleDisplayName = "游戏";
方法二
1)编辑Info.plist,添加一个新的属性Application has localized display name, 设置其类型为boolean,并将其value设置为选中状态
2)创建一个空文件,取名为InfoPlist.strings
3)对InfoPlist.strings进行本地化(Get Info -> Make Localization),然后设置需要的语言(简体中文zh_CN)
4) 编辑不同的InfoPlist.strings文件,设置显示名字,如:CFBundleDisplayName = "游戏";
InfoPlist.strings与Localizable.strings的区别:
原文:http://lists.apple.com/archives/carbon-dev/2007/Mar/msg00167.html
What's the difference between these two files? Is InfoPList.strings only for properties found in Info.plist?
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。