iOS开发App语言随系统语言变化

2018-06-21  本文已影响0人  此笙吥涣

一.App名称本地化

1.新建一个source文件,选择string files,文件命名为InfoPlist(必须是这个名字,否则无效)

这里写图片描述

2.新增本地化语言类型,步骤如下,选择简体中文


这里写图片描述

3.选中InfoPlist.string文件,然后右侧点击,选择Chinese


这里写图片描述

确定后该文件会变为2个,如图


这里写图片描述

4.在对应文件内写入如下代码

CFBundleDisplayName = "hello”;    //英文名称
CFBundleDisplayName = "你好”;      //中文名称

5.在Info.plist中新增一个字段,设置为YES


这里写图片描述

做到这一步,App的名称已经做到了本地化

二.本地化App中显示的文本

1.同1中类似,创建一个string文件,命名为Localizable.string(最好为该名字,否则后面调用会有区别)
2.为该文件添加多语言,步骤和上面的一样

这里写图片描述

3.完成后,在对应文件内写入想要本地化的文本,左侧为key,右侧为实际显示的文本

"text" = "en_text”;          //英文
"text" = “文本”;               //中文

4.在程序中使用key-value的方式取值

UILabel * lab = [[UILabel alloc] initWithFrame:CGRectMake(30, 100, 120, 40)];
lab.text = NSLocalizedString(@"text", nil);     //text是key

注:因为前面采用的string名字是Localizable.string,所以这里采用NSLocalizedString(@”text”, nil)来取值
如果string的文件名称是其它的,则需要用

NSLocalizedStringFromTable(@"text", @"fileName", nil);     //fileName就是string文件的名字

三.本地化图片

两种方式:第一种和本地化字符串类似,根据key取不同的中英文图片,主要说第二种
1.选中要本地化的图片,点击图片,然后点击右侧


这里写图片描述

2.图片点击后会出现2张图片,中文和英文的,以后只需要把对应的中英文图片取相同的名字,放到对应的文件内就可以了

上一篇下一篇

猜你喜欢

热点阅读