app国际化

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”;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值