Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2675984
  • 博文数量: 877
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 5921
  • 用 户 组: 普通用户
  • 注册时间: 2013-12-05 12:25
个人简介

技术的乐趣在于分享,欢迎多多交流,多多沟通。

文章分类

全部博文(877)

文章存档

2021年(2)

2016年(20)

2015年(471)

2014年(358)

2013年(26)

分类: iOS平台

2015-10-10 14:18:18

添加要支持的本地化语言

本地化 app name

1、 新建 InfoPlist.strings文件; 

2、选中InfoPlist.strings 点击 Xcode -> View ->show File Inspector,在Localization中点“+”,添加要本地化的语言。然后在InfoPlish.strings 左边会多出一个三角形,点击展开后可以看到InfoPlish.strings(english)和InfoPlish.strings(chinese)两个版本的文件等; 

3、在 InfoPlish.strings(xxx) 中添加 CFBundleDisplayName =“app name”; 

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

本地化 字符串

(1)新建 Localizable.strings 文件; 

(2)类似 本地化 app name 的第二步: 

(3)在 Localizable.strings(xxx) 中加入 需要翻译的

 “ key" = "value"   <br /> 

(3)在代码中使用NSLocalizedString(< key>, < comment>)来读取本地化字符串,代码如下:

Label.text = NSLocalizedString(@"welcome", nil); <br /> 

注意:如果你的strings文件名字不是Localizable而是自定义的话,如wang.strings,那么你就得使用NSLocalizedStringFromTable()来读取本地化字符串: 

NSLocalizedStringFromTable(@“welcome”,@“wang”, nil)

项目默认使用英文语言

我们的项目支持 简体中文,繁体中文,英文,泰文,日文韩文 6种语言,其他语言 默认显示英文。Long long ago(iOS7 之前),这种需求 是不需要做额外处理的,因为系统 就是处理的这样的。But ,iOS7 之后 天气变了,系统选择了 app 所不支持的语言,默认选择系统上次的语言(当然是app 支持的一种啦)。那么怎么让 app 不支持的语言默认显示英文呢?看代码吧


我们在程序中 直接使用 label.text = LS(@“key”,@““); 就可以了

如何操作导出文件

iOS8 以前的方式 
用命令将所有NSLocalizedString返回的字符串格式化到Localizable.strings里。 
命令行进入工程目录(我的工程名是LocalizationTest),运行下面命令:

<!-- lang: cpp -->find . -name /*.m |xargs genstrings -s NSLocalizedString -o tmp.iproj

这样我们就可以将程序中所有的需要本地化的字符串,以key-value的形式格式化输出到 Localizable.strings文件里,然后这个Localizable.strings 文件就可以送出去翻译了

iOS8中的方式 
在iOS8中 apple 加入了一种国际通用的xliff文件,本质是xml文件,全称是 Localisation Interchange File Format(本地化交换文件格式), 里面就是需要翻译的东西。()

打开xliff文件,里面 标签中是表示要翻译的东西。

选中Editor –> Export For Localization就可以导出需要翻译的字符串,它会遍历整个工程,将xib,stroryboard, 代码中需要本地化字符串导出到.xliff文件中。小伙伴们再也不需要手动输入上面的命令将NSLocalizedString对应的需要翻译的字符串输出到Localizable.strings里了。 Import Localizations就是导入翻译的字符串,并自动刷新xib,.strings, storyboard中本地化文件

阅读(882) | 评论(0) | 转发(0) |
0

上一篇:ios6的国际化

下一篇:IOS , plist 配置项说明

给主人留下些什么吧!~~