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

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

文章分类

全部博文(877)

文章存档

2021年(2)

2016年(20)

2015年(471)

2014年(358)

2013年(26)

分类: iOS平台

2015-10-10 14:17:27

ios6的国际化

http://my.oschina.net/megan/blog/141080

一. 先说说以前怎么做国际化

1. 项目名称国际化

1.1 在工程项目种,单击InfoPlist.strings,查看右边的属性,在Localization栏添加语言。 

    

1.2 添加完成后打开对应语言文件,分别添加 

CFBundleDisplayName="China";

CFBundleDisplayName="中国";

运行,如果此时你的模拟器是中文,你会看到你的程序名称变成了 中国: 

来到设置里把语言设置成 English。此时程序名称变成了:China 

2、内容国际化

2.1新建Localization.strings文件 

      

2.2 添加语言和1.1环节一样。

2.3 添加语言内容 

添加"Key"="value"; 然后使用时用NSLocalizedString(@"key", @""); 读取内容.

二. 坑姐的ios6国际化

我想大家和我的问题一样,当使用国际化时,之前版本Xcode上新建Localizable.strings后,添加语言的“+”号不见了,在网上查了一下,原来Apple把这个“+”号换地方了。 

首先新建一个名为Localizable.strings的资源文件



完成后选中该文件,在属性选择器中可以看到多了个按钮: 



点击这个按钮后,出现国际化语言选择框,但只有一个English的选项: 


点击Localize按钮,这时只支持英语。Xcode4.5之前的版本会在属性选择器里面有个“+”号用来添加其他语言支持,现在没了,其实是在别的地方。点击工程根目录,并选择PROJECT,然后选择INFO选项卡,底部我们就看到了Localizations: 


点击“+”号选择一门语言添加上,我这里选的是Chinese,ok,完成了,再看Localizable.strings文件,就多了两个子文件,分别支持英文和汉语: 

在属性选择器中也看到了English和Chinese: 

这样,就完成了在Xcode4.5上国际化的设置和操作,基本使用和前面一样。 

获取系统当前语言 


NSString *identifier = [[NSLocale currentLocale] localeIdentifier]; // 比如Loacl是en_Zh
NSString *displayName = [[NSLocale currentLocale] displayNameForKey:NSLocaleIdentifier value:identifier]; // displayName = “中国”


附上官网地址:http://developer.apple.com/library/ios/#referencelibrary/GettingStarted/RoadMapiOSCh/chapters/InternationalizeYourApp/InternationalizeYourApp/InternationalizeYourApp.html

阅读(472) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~