app国际化
2016-03-15 19:51
323 查看
app国际化
字符串资源文件默认命名为Localizable.strings一、IOS程序名称国际化
在新建InfoPlist.strings文件,在Localization栏添加语言 ,在不同语言中配置 CFBundleDisplayName=”China”;
例如中文 CFBundleDisplayName=”中国”;
二、内容国际化
1、系统:创建Localizable.strings,然后添加语言
格式:“key”=“value”; //分号不能少
调用时NSLocalizedString(key,comment);
例如: NSLocalizedString(@”one”, nil);
2、自定义:当文件名不是Localizable时,例如:example.strings
格式也一样,但是调用时是:
NSLocalizedStringFromTable(<#key#>, <#tbl#>, <#comment#>)
例:NSLocalizedStringFromTable(@”one”, @”Localization”, nil);
三、图片国际化
1、可以再Localizable.strings中不同的语言设置不同的图片名,获取不同的图片名即可
例如:
Localizable.strings(english)文件中加入:
“BtnCancel”=”BtnCancelEn.png”;
Localizable.strings(chinese)文件中加入:
“BtnCancel”=”BtnCancelCn.png”;
2、第二种方法
选中图片,然后XCode-> View-> Utilities -> File Inspector,点击Localizable本地化,然后添加语言,在不同的lproj文件夹中替换不同的图片即可
四、其他国际化
和图片的第二种方法一样
五、获取支持的语言
两种方法
1、NSUserDefaults *user = [NSUserDefaults standardUserDefaults];
NSArray *languages = [user objectForKey:@“AppleLanguages”];
NSLog ( @”%@” , languages);
2、NSArray *languages = [NSLocale preferredLanguages];
获取当前语言,在数组中第一个元素就是 languages[0]
六、storyboard与xib国际化
设置好语言后,点击storyboard,在第一个选项(Show the file)的Localization中勾上需要的语言
选中需要设置的控件,在第三个选项(Show the identity)中,在Document栏记录下设备的Object ID 如:
然后分别在不同的语言文件中,配置响应属性,如:label控件 “label.text” = “hello”; “textField.placeholder” = “please enter”;
相关文章推荐
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 不可修补的 iOS 漏洞可能导致 iPhone 4s 到 iPhone X 永久越狱
- iOS 12.4 系统遭黑客破解,漏洞危及数百万用户
- 每日安全资讯:NSO,一家专业入侵 iPhone 的神秘公司
- [转][源代码]Comex公布JailbreakMe 3.0源代码
- 浅谈Ruby on Rails的国际化
- JavaScript面对国际化编程时的一些建议
- php程序的国际化实现方法(利用gettext)
- 讲解iOS开发中基本的定位功能实现
- iOS中定位当前位置坐标及转换为火星坐标的方法
- js判断客户端是iOS还是Android等移动终端的方法
- iOS应用中UISearchDisplayController搜索效果的用法
- IOS开发环境windows化攻略
- iOS应用中UITableView左滑自定义选项及批量删除的实现
- 浅析iOS应用开发中线程间的通信与线程安全问题
- 检测iOS设备是否越狱的方法
- .net平台推送ios消息的实现方法
- 探讨Android与iOS,我们将何去何从?