iOS开发------程序实现国际化Localizable

研究AssertsLibaray.framework以及Photos.framework这两个原生静态库的时候,相册的组名需要用到国际化来标示一下,虽然系统提供了组名的国际化,但是稍微的了解了一下国际化还是有必要的。就在这里就稍作记录作为参考。语言国际化就是为不同的语言做的适配,就像iPhone一样,根据不同的语言会将文字变成相应的语言。以下的操作的编译器为Xcode 7.3

内容国际化

1、创建字符串国际化文件(Strings File)

iOS开发------程序实现国际化Localizable_第1张图片

2、将文件的名字改为Localizable,这里需要注意一个问题,必须是这个名字,不然系统在找适配文件的时候会找不到文件,其次后缀名不需要打,不然会创建了一个叫做Localizable.strings.strings的文件,这样也是在找适配文件的时候找不到文件,楼主之前就是犯了这个错误,下面的截图会出现名字的问题,共勉.

iOS开发------程序实现国际化Localizable_第2张图片

3、选中.strings文件,可以从右侧的属性栏看到相关属性以及操作,点击标出的Localize按钮,进行创建

iOS开发------程序实现国际化Localizable_第3张图片

4、在弹框中点击Localize选项确认

iOS开发------程序实现国际化Localizable_第4张图片

5、在项目中找到PROJECT -> Info -> Localizations点击左下角的+号就可以添加各种适配的语言.这里只添加了本身的英文以及简体中文 ,添加完毕,之前的.strings文件左边会出现小箭头,表示下面已经有适配语言的文件。

iOS开发------程序实现国际化Localizable_第5张图片

6、文件右侧的属性栏原本是Localize按钮的地方就成为了选择适配语言的文件选项,将自己适配的语言进行勾选:

iOS开发------程序实现国际化Localizable_第6张图片

7、在各自的响应文件中,按照"key" = "value"的形式进行适配就可以了:

//适配中文:
//这是在Localizable.strings( Chinese(Simplified) )中,对中文进行适配
"Hello" = "你好啊";
//适配英文
//这是在Localizable.strings( English )中,对英文进行适配
"Hello" = "Hello";

8、适配在代码中用法如下:

//进行本地语言国际化适配

//Objective-C
self.lblText.text = NSLocalizedString(@"Hello", @"")

//Swift
lblText.text! = NSLocalizedString("Hello", comment: "")

将iPhone语言进行设置切换运行就可以进行适配,显示如下,完成了相关内容对英文以及中文的适配:

项目名称国际化

步骤与上面的内容是一样的,只说几个不同点
1、文件名字叫做InfoPlist(.strings)
2、内容的形式为CFBundleDisplayName = ""

楼主在相应文件里面下写法如下:

//适配中文:
//这是在InfoPlist.strings( Chinese(Simplified) )中,对中文进行适配
CFBundleDisplayName = "岳";
//适配英文
//这是在InfoPlist.strings( English )中,对英文进行适配
CFBundleDisplayName = "EnName";

效果如下:
iOS开发------程序实现国际化Localizable_第7张图片

你可能感兴趣的:(ios)