多语言支持
也称: i18n(国际化) 和 localization(本地化)
字符串文字的本地化主要步骤
新建strings文件(一个strings文件对应一种语言)
让strings文件支持本地化
给项目添加新的语言
具体步骤:
第一步:需要创建一个字符串文件,用来存放每个国家对应的文字
第二步:需要让项目支持多种语言,首先要对文件进行本地化处理,把需要本地化的语言添加进去.
来到刚刚初始化的strings文件
![Uploading Snip20160420_9_331817.png . . .]](http://upload-images.jianshu.io/upload_images/1306620-5c44f703def97109.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
然后选择localize,为了让系统知道,这个文件将来要做本地化处理
让应用支持其他语言
然后,就会出现下面这个,把两个storyboard的勾弄掉,再Finish
这时候就会出现
而文件名那里也可以展开了
此时在右边勾选English的话
左边就会出现相应的文件
此时会根据用户手机的语言环境而去加载这里面相对应的文件(如果用户手机的语言环境不是上面文件的其中一种的话,就会加载Base文件夹)
第三步:往strings文件里面添加具体内容
格式:key = value;
比如说:
第四步:把需要转换的文字,用[[NSBundle mainBundle]localizedStringForKey:key value:value table:table]这个方法转化.拿刚刚第三步传进去的cancel来说,这里的key,就是指处理的参数"cancel",value是指如果key等于nil,或者在文件中找不到相对应的key时会把value的值返回.table是文件名,在这里可以写Word,不用加后缀.
这样就可以实现你的文件进行多国语言转换.