关闭

使用xcode4做ios的国际化

1325人阅读 评论(2) 收藏 举报

app是针对国内市场的,但国内付费软件的状况不咋样,也就顺道卖卖全球市场了。

针对这个需求,对app中的文字和app的软件名称做了国际化处理。另外xib文件和图标貌似都是可以进行国际化处理的。但我的项目中没有这个需求,也就没去查找相关的资料

xcode4和xcode3上面关于制作国际化文件的操作步骤不太一样。网上关于xcode3中国际化的文件很多,xcode4的不多。根据自己制作的过程来记录下来

1)在项目的“supporting files”目录中右键“new file”然后在弹出窗口左侧选择IOS的resource项,在右侧就可以看到“String File”的图标。创建这个文件,新建的文件名要写成“Localizable.strings”

2)点击刚才创建的这个文件,选择xcode4的菜单中的“view”-》“utilities”-》“file inspect” 右侧会看到一些属性的信息

3)找到Localization这项,现在应该是空的,点“+”进行国际化的添加。因为我只制作了中文和英文,所以我加了“English”和“Chinese”,这里要注意的是“Chinese”要选择“zh_Hans”,这个是简体中文。

4)添加好后就可以看到你项目目录下会生成对应的目录,zh-Hans.lproj和en.lproj 目录里面就是Localizable.strings的文件

5)在xcode4中可以看到原先创建的Localizable.strings文件的左侧会多出一个三角图标,点击后会扩展出2个文件,一个中文,一个英文的。点击每个文件进行编辑就可以了。

6)文件中的格式是“Key”=“value”; 引号是必须加的,分号也是。

7)在程序中需要使用国际化字符串的时候,调用NSLocalizedString(@"about"nil)就可以进行字符串的显示。其中第一个字符串就是文件中的key,第二个字符串可以使用nil代替也可以写一些注释

关于程序文件名的国际化

1)按照上面的步骤制作国际化文件,文件名是infoPlist.strings

2)文件中的key使用指定的CFBundleDisplayName,例子CFBundleDisplayName="game";

3)Info.plist,添加一个新的属性Application has localized display name, 设置其类型为YES

4) Info.plist,中检查Bundle name和Bundle display name 是否为${PRODUCT_NAME}

 

关于xib文件的国际化,这个我的项目使用cocos2d,所以我不关注这个。

关于图片的国际化

原理与文字的国际化类似,就是 “view”-》“utilities”-》“file inspect”里面添加语言类型就可以了。

必须一个图片一个图片的添加。

 

注意大小写,自己是犯了这样的错误导致查了半天才查到问题

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:1526334次
    • 积分:14946
    • 等级:
    • 排名:第808名
    • 原创:165篇
    • 转载:198篇
    • 译文:1篇
    • 评论:175条
    最新评论