IOS应用程序多语言本地化的一点个人总结

在一个地方和pdf文件中都有这个方法

(1)点击“new file”然后在弹出窗口左侧选择IOS的resource项,在右侧就可以看到“String File”的图标。创建这个文件,命名为“InfoPlist”(一定是这个文件名) 就生成一个InfoPlist.strings文件;

(2)选中InfoPlist.strings 点击 XCode-> View-> Utilities -> File Inspector,在Localization中点“+”,添加chinese (zh-Hans)类型的为简体中文,english 应该会自动添加上。然后在InfoPlish.strings 左边会多出一个三角形,点击展开后可以看到InfoPlish.strings(english)和InfoPlish.strings(chinese)两个版本的文件;

(3)在InfoPlish.strings(english)文件中加入:

  1. CFBundleDisplayName ="Program";   

其中“Program”为英文应用程序名称,同理在InfoPlish.strings(chinese)文件中加入:

  1. CFBundleDisplayName ="应用程序";  

 其中“应用程序”为中文名称,注意:CFBundleDisplayName加不加双引号都行

(4)编辑Info.plist,添加一个新的属性Application has localized display name, 设置其类型为boolean,并将其value设置为YES即可


在xcode5.1.1的版本中

但是我用的xcode5.1.1版本中,在project中添加中文的时候已经自动在supporting files里面自动创建了infoplist.strings的文件,所以就不用再像前面的那种创建了

直接在这个string里面修改即可,但是这个文件里面只有bundle name,而没有前面说的cfbundle name,但是在测试中,如果你只写bundle name,不论加不加引号都是没有效果的,还是需要像上面的那个一样用cfbundlename,这个可能是一个小小的bug或者是只有我电脑的个例,这两点是我碰到问题,所以记录一下,并且记得在创建的storyboard中把右面那三个都打上勾,如下图

然后就可以了,切换模拟器的语言就可以看出效果了

特别还要注意两句的后面都有分号,如果缺少一个会出错的

后续:

后来才知道是不显示cf是因为没有切换的原因

切换方法:

切换之后就显示了

Last modification:January 1st, 1970 at 08:00 am
如果看了这个文章可以让你少加会班,可以请我喝杯可乐
已打赏名单
微信公众号

Leave a Comment