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 桌面时 就一样会根据设置的语言而显示不同的语言了.
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 桌面时 就一样会根据设置的语言而显示不同的语言了.
相关文章推荐
- ios ALAsset 通过CGImageWithOptions: 压缩照片技术
- ios获取本地音乐库音乐很详细 扫描IPHONE本地音乐文件,获得音乐名,歌手名代码示例
- IOS图标消息推送在不同ios版本中的推送相关
- iOS学习之NSString
- iOS开发系列--地图与定位
- ios 传入秒得到时分秒算法
- OC用Dispatch处理并发完成所有任务之后执行最终的结果
- iOS如何调起地图进行导航(高德,百度,系统自带)(URI)
- ios 调用系统照片库/拍照/录像
- 记一个iOS开发中cell的重用机制引发的错误
- iOS开发之关闭ARC环境
- iOS---通知传值的使用
- iOS RTMP 视频直播开发笔记(6)- 封包 FLV
- iOS开发之OC内存管理(二)
- ios 一行代码移除所有字视图
- iOS 添加自定义字体方法详解
- IOS学习笔记之对象复制
- iOS Core Animation 简明系列教程
- ios9API基础知识总结(二)
- iOS工作小常识