iOS启动页国际化(多语言)

据说有两种方式,本人尝试第一种方法不行,查询之后改为第二种方法,可行。

第一种方法

建一个launchScreen.xib,之后localizable,添加多语言文件。string文件内容格式:"DNM-aR-9rZ.text" = "Hello";(内容格式忘记的话,可以先生成xib文件,然后点击右侧转换为string文件。base是必要的,若无就会黑屏。)

iOS启动页国际化(多语言)_第1张图片
方法1

遇到问题:无论怎么更改语言/地区,一直显示英文。模拟器,真机都不行。

分析原因:该方法适合xib/sb的国际化,但是不适合启动页的国际化,启动页在应用代码运行前就展示了,是静态的页面,不支持更改。具体原因刻查看苹果官方指南。原文如下:

Avoid including text on your launch screen. Because launch screens are static, any displayed text won’t be localized.

第二种方法

建几个独立的sb,命名如sb_en/sb_zh等,然后在infoplist的string文件里面给UILaunchStoryboardName赋值。注意每个sb要设置initial。

方法2

木有问题,亲测可用。下附参考资料:

xcode 6 iOS launchScreen.xib localization issue

IOS的国际化(一)APP名称和启动页

Human Interface Guidelines

你可能感兴趣的:(iOS启动页国际化(多语言))