您的位置:首页 > 移动开发 > IOS开发

iOS 对国际化语言的支持.

2015-12-17 13:51 597 查看
1 引入

app是针对国内市场的,但国内付费软件的状况不咋样,也就顺道卖卖全球市场了。针对这个需求,对app中的文字和app的软件名称做了国际化处理。具体步骤如下:

2 步骤

2.1中文国际化

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代替也可以写一些注释。

2.2应用中文的国际化

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}。

我喜欢图文并茂,看起来比较有感觉!^^

首先第一步是创建文件,创建步骤如图:



取名的话,必须使用: Localizable.strings

创建成功以后,接下来就是选择支持的语言了.

这里要注意的是”Chinese”要选择“zh_Hans”,这个是简体中文。“zh-Hant“ 是繁体中文



选择好支持的语言后,就可以开始对具体的语言文件进行编辑工作了,

编辑格式必须如下:

"Key"="value";

[csharp] view
plaincopy

/*

Localizable.strings

UICustomControl

Created by 余书懿 on 12-9-17.

Copyright (c) 2012年 珠海飞企. All rights reserved.

*/

"Test"="测试中";

通过宏代码调用:

[csharp] view
plaincopy

NSLocalizedString(@"Test", @"这个字段只是一个注释")

通过Key来配对,应用会自己获取当前iOS 设置的使用语言

运行后即可看到效果

另外还有一个是修改应用的显示名称,此时要新建一个资源文件

名称必需叫做:infoPlist.strings

创建以后同样设置可以支持的语言,设置以后开始编辑如下代码:

[csharp] view
plaincopy

/*

infoPlist.strings

UICustomControl

Created by 余书懿 on 12-9-17.

Copyright (c) 2012年 珠海飞企. All rights reserved.

*/

CFBundleDisplayName="自定义控件";

还有一点要注意的是 工程Plist文件中的 Bundle display name 要设置为: ${PRODUCT_NAME}.

那么应用在显示iPhone 桌面时 就一样会根据设置的语言而显示不同的语言了.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: