今天博主有一个国际化的需求,遇到了一些困难点,在此和大家分享,希望能够共同进步.
大部分应用都需要根据手机系统语言的不同,使用不同的应用名称和应用内的显示语言。
一般来说,支持英语、简体中文、繁体中文是比较常见的。当然,如果还要添加其他的语言,原理是相同的。
这是些常用的字符,放在这里以便复制使用
InfoPlist.strings
CFBundleDisplayName="";
CLLoctionNotice="Location is required to find out your sports status";
Localizable.strings
NSLocalizedString(@"", nil)
1、应用名称的国际化
添加需要国际化的语言种类支持
![](https://images2015.cnblogs.com/blog/797912/201510/797912-20151026081752419-301098693.png)
添加需要国际化的语言种类支持
添加国际化新文件
![](https://images2015.cnblogs.com/blog/797912/201510/797912-20151026081502013-550415817.png)
添加国际化新文件
添加并命名
![](https://images2015.cnblogs.com/blog/797912/201510/797912-20151026081514200-1823532762.png)
添加并命名
选中添加后的文件,在右边添加base
![](https://images2015.cnblogs.com/blog/797912/201510/797912-20151026081723825-1965962215.png)
选中添加后的文件,在右边添加base
都打上勾,就添加到工程中了
![](https://images2015.cnblogs.com/blog/797912/201510/797912-20151026081537482-1577257782.png)
都打上勾,就添加到工程中了
添加之后,会显示成这样
![](https://images2015.cnblogs.com/blog/797912/201510/797912-20151026081547419-523230558.png)
添加之后,会显示成这样
在文件里以“key” = “value”;的格式修改应用名称,就成功了
![](https://images2015.cnblogs.com/blog/797912/201510/797912-20151026081557857-953948152.png)
在文件里以“key” = “value”;的格式修改应用名称,就成功了
2、应用内名称的国际化
应用内的国际化和上面的基本一样,只是一般会重新创一个文件,命名也会不同
![](https://images2015.cnblogs.com/blog/797912/201510/797912-20151026081607779-1316398577.png)
应用内的国际化和上面的基本一样,只是一般会重新创一个文件,命名也会不同,如上图所示
然后在工程中使用时,要用NSLocalizedString(@"XXX", nil)的格式替代NSString就可以了
![](https://images2015.cnblogs.com/blog/797912/201510/797912-20151026081618700-1614977245.png)
然后在工程中使用时,要用NSLocalizedString(@"XXX", nil)的格式替代NSString就可以了
http://www.jianshu.com/p/5ae148570b98?plg_nld=1&plg_uin=1&plg_auth=1&plg_nld=1&plg_usr=1&plg_vkey=1&plg_dev=1