我将我的应用本地化为2种语言(英语,法语)。当iPhone语言设置为英语时,应用程序以英语显示。当iPhone语言设置为法语时,应用程序以法语显示。但是,当iphone语言设置为另一种语言时,可以说西班牙语应用以法语而非英语显示。
我在Info.plist文件中将“本地化本地开发区域”设置为“ en”或“美国”,但是没有帮助。
Main.storyboard(基本)也为英语。
答案 0 :(得分:0)
只需将开发人员语言设置为英语
YOURPROJECT.xcodeproj
-> show package content
->使用文本编辑器直接编辑 .pbxproj 文件-查找 developmentRegion 属性>
并相应地更改 Info.plist 中的 Localizations本机开发区域属性en
或下面的图片
这样的结果一次,就可以成功设置: ] 1
答案 1 :(得分:0)
一种实现方法是,如果首选语言与en.lproj
或en
不匹配,则从fr
获取英语字符串。
这是您获得首选语言的方式:
let preferredLanguage = Locale.preferredLanguages[0]
这是使用本地化的键获取英文字符串的方法:
if let enPath = Bundle.main.path(forResource: "en", ofType: "lproj") {
let enBundle = Bundle(path: enPath)
enBundle?.localizedString(forKey: "your_key_here", value: nil, table: nil)
}
在iOS本机的“设置”应用->“常规”->“语言和区域”中,有一个首选语言顺序列表。
应用和网站将使用此列表中的第一语言 支持。
例如: