IOS应用本地化小结

IOS应用本地化小结,第1张

概述分类: ios 2012-10-09 10:00  9人阅读  评论(0)  收藏  举报 目录(?)[+] 几经艰辛,项目终于到达尾声,在上周给游戏增加了简体中文的本地化支持,这次本地化的内容主要有应用的名称、字符串和图片资源,IOS在本地化的支持还是很友好的,最后来个简单的小结吧。因项目是在Xcode4上开发,本文的 *** 作也是基于Xcode4,在Xcode3上,部分 *** 作应该会有所不同。 1. 给
分类: ios 2012-10-09 10:00  9人阅读  评论(0)  收藏  举报

目录(?)[+]

几经艰辛,项目终于到达尾声,在上周给游戏增加了简体中文的本地化支持,这次本地化的内容主要有应用的名称、字符串和图片资源,IOS在本地化的支持还是很友好的,最后来个简单的小结吧。因项目是在Xcode4上开发,本文的 *** 作也是基于Xcode4,在Xcode3上,部分 *** 作应该会有所不同。

1. 给项目增加语言支持:

打开项目的“Info“属性编辑界面时,我们可以看到”localizations“一栏,如下图所示,这就是设置项目本地化支持语言的地方,在这里我们可以加入简体中文(Chinese(zh-Hans))、繁体中文(Chinese(zh-Hant))等语种的支持。

 

2. 应用程序名

一个Xcode项目可以建立多个target,每个target代表一个不同的应用(产品),而且每个target都有自己的Info.pList配置文件,应用程序名(安装后在IOS设备上显示的名称)是在Info.pList配置文件里设置。

Info.pList不能设置本地化,如果需要让应用程序名以本地化形式显示,则要创建一个名为“InfoPList.strings”的strings资源文件,在InfoPList.strings里设置应用程序名,设置方式为 :"CFBundledisplayname" = "要显示的名称"; App安装后,应用程序名会显示为键“CFBundledisplayname”的值。通过对InfoPList.strings本地化设置,就可以实现应用语言的本地化。主要 *** 作步骤为:创建“InfoPList.strings”文件 -> 选中“InfoPList.strings” -> 打开右边工具栏(Utilites) -> 在“Localization”栏目加入语种,如下图所示:

加入多个语种后,InfoPList.strings文件下会多出一个三角箭头,展开后,可以看到每个语种都会对应一个“InfoPList.strings”文件(下图所示),选中一个文件,改变“CFBundledisplayname”的值,这样就可以实现在不同的语言环境下显示不同名称的效果了。

  3. 本地化字符串 cocoa框架内置了两个常用的宏来实现字符串的本地化: NSLocalizedString(key, comment)   根据设备当前的语言环境自动加载对应的资源文件“Localizable.strings”,再返回资源文件里Key的值,如果不存在“Localizable.strings”文件,或者key不存在,会返回key本身。

 

NSLocalizedStringFromtable(key, tbl,sans-serif; line-height:24px"> 根据设备当前的语言环境自动加载对应的资源文件tbl,再返回资源文件里Key的值,如果不存在tbl文件,或者key不存在,会返回key本身。  

我们只要把字符串定义在strings资源文件里,像应用程序名的本地化 *** 作一样,对strings资源文件进行本地化 *** 作,再用使用上面2个宏读取,就可以实现字符串本地化显示了:

  //从文件“Localizable.strings”里读取Key为“Localizable Demo”的值    Nsstring *Title = NSLocalizedString(@"Localizable Demo", nil);       //从文件“MyStrings.string”里读取key为“test”的值    Nsstring *testString = NSLocalizedStringFromtable(@"test", @"MyStrings", nil);  

4. 图片和其他资源文件

选中需要本地化的资源文件 -> 打开右边工具栏(Utilites) -> 在“Localization”栏目加入需要支持的语言。xcode会把资源文件拷贝到新加入语言的的目录下,把准备好的本地化文件替换掉xcode自动拷贝的文件即可。

一个完整的本地化程序例子
DEMO
总结

以上是内存溢出为你收集整理的IOS应用本地化小结全部内容,希望文章能够帮你解决IOS应用本地化小结所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1054426.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存