iOS之多语言

引言:

首先.之前一直觉得设置多语言就是在开发完后,在项目里简单设置一下,就可以根据系统的语言自动翻译了万万没想到啊...还是自己的想法过于简单,这次自个把自个坑了一把不多说了,说多了都是泪啊

一.设置APP名字多语言

1. Xcode顶部:file-->new-->file,在弹出的框中向下拉找到Resource下的Strings file选中next,这里注意一下名字,必须是固定的InfoPlist.strings
(

image.png

)
2. 点击项目PROJECT-->Info-->Localizations点击 +号选择你要添加的语言
(
image.png

)
3.选中上面建好的InfoPlist.strings最右边点击Localize...-->Localization将你要添加的语言勾上,在InfoPlist.strings下面就会出现你所添加的语言,最后在各个语言文件中添加"CFBundleDisplayName" = "APP名字"; CFBundleDisplayName是固定的
(
image.png

image.png

image.png

)

二.设置显示文本多语言

1,2,3三步跟上面是相同的,不同的是新建的Strings file的名字,这里注意一下,如果用Localizable.strings命名,当取值时必须用NSLocalizedString(@"key的值",@"")
(

image.png

image.png

image.png

)
4.如果是自定义的命名,取值时用NSLocalizedStringFromTable(@"key值", @"Strings file的名字", @"")
image.png

三.图片多语言

因为我们这边没有处理图片,个人觉得跟文本是一样的,UI切两套图,命名不同根据key值去取(没有验证过,不晓得)

综上所述:如果项目中会用到多语言,最好在项目开始时就做处理,切记 key 值不要重复,因为系统是不会报错的

你可能感兴趣的:(iOS之多语言)