iOS 非本地化语言显示顺序

App做了中文和英文本地化. 现在非英语的环境下,比如俄文的情况下要显示英文.但是实测经常有时显示英文,有时显示中文,这是怎么回事?.这个主要原因,是因iOS系统可以支持多个首选语言造成的.这样把情况变成很复杂,以下分几种情况

设置语言是在 通用-->语言与地区 中设置

iOS 非本地化语言显示顺序_第1张图片
语言设置

1.当前界面是本地化语言

这个会自动显示相应本地化语言界面. 比如系统语言是中文,无论首选语言有多少个,则App显示中文提示. 系统语言为英文,则App显示英文

比如以下两种情况,App均显示中文.


iOS 非本地化语言显示顺序_第2张图片
只有中文语言
iOS 非本地化语言显示顺序_第3张图片
多个首选语言,第一个是中文

2.只有非本地化的语言

在本例中,即系统中只有俄语的.此时App显示指定缺省语言,
(info.plist 中Localization native development region 指定语言,这里指明显示en)

iOS 非本地化语言显示顺序_第4张图片
Paste_Image.png
iOS 非本地化语言显示顺序_第5张图片
首选语言是俄语

3. 首选语言包含非本地化(俄)和一个本地化语言(中或英)

这种情况是系统有两个语言,会显示系统首选语言中这个本地化语言的界面,

比如第一首选语言是俄文,第二语言是中文. 这时App界面会显示中文

iOS 非本地化语言显示顺序_第6张图片
App显示中文

如果第一首选语言是俄文,第二语言是英文. 这时App界面会显示英文

4.首选语言包含非本地化(俄语)和多个本地化语言(中和英)

这种情况下,哪种本地化语言排序在前,则App显示对应语言.

比如首选第一语言是俄文,第二语言是中文,第三语言是英文.则App显示中文界面.

iOS 非本地化语言显示顺序_第7张图片
Paste_Image.png

比如首选第一语言是俄文,第二语言是英文,第三语言是中文.则App显示英文界面.

如何调整首选语言顺序?

比如在 首选第一语言是俄文,第二语言是中文,第三语言是英文,想调整成
首选第一语言是俄文,第二语言是英文,第三语言是中文,如何操作?

iOS 非本地化语言显示顺序_第8张图片
Paste_Image.png

删除和拖拽

这个在语言设置的编辑窗口

iOS 非本地化语言显示顺序_第9张图片
删除和拖拽

你可能感兴趣的:(iOS 非本地化语言显示顺序)