iOS 国际化 (国际化文字内容不改变,app名字国际化,一键切换语言)

首先我们要分三个步骤讲解怎么一步步实现app名字国际化、内容国际化、一键切换国际化的:

一、app设置内容或者可以说是app名字或者可以说Info.Plist中的东西国际化

 app名字国际化

 1、首先新建文件command+N 选择,然后next

记住文件名字必须为:InfoPlist,要不然系统识别会失败!

然后点击create,文件工程中会多一个不带箭头的文件

2、添加需要用到的语言

添加需要的语言(简体中文、繁体中文)英文为默认的语言不需要添加! 

然后直接点击finish

3、添加语言文件到InfoPlist.Strings文件夹下边

 

这时候就可以写代码了

在InfoPlist.Strings(English)文件下写

"CFBundleDisplayName" = "Weibo";

同样的在另外两个文件夹写上对应的国际语言

"CFBundleDisplayName" = "微博";//InfoPlist.Strings(chinnese(simplified))

这时候系统模拟器或者真机切换语言看下,app的名字就是对应的(Weibo和微博了)

二、本地应用文字内容国际化

 基本步骤和第一步资源国际化是一样的,只需要新建上边InfoPlist名字的时候换成Localizable!!!!!

 1、同样的三个文件夹

内容非别是:

"key" = "home";//
"key" = "首页";
"key" = "首頁";

然后在viewcontroller中写入代码

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    UILabel *label = [[UILabel alloc]initWithFrame:CGRectMake(100, 300, 200, 20)];
    label.textColor = [UIColor blueColor];
    [self.view addSubview:label];
    label.text = NSLocalizedString(@"key", @"这个是前边词的注解,可以不用填写");

}

这是后本地内容国际化就完成了!切换本地模拟器环境和真机环境就能看到本地的文案的改变!

 

三、一键切换国际化语言,这篇博客写的比较清楚(https://www.jianshu.com/p/57f240f2a180),但是这个在你切换本地语言的时候对其改变无效 (引文本地储存了你上次记忆的appLanguage)!和二配合使用比较好!

posted @ 2018-08-09 15:23  PeterWolf  阅读(2306)  评论(4编辑  收藏  举报