要获取不同语言的本机iOS弹出窗口,我已在info.plist中添加了如下支持的语言
以此,如果我选择语言法语,英语,西班牙语,意大利语或德语。我可以使用相应语言获取iOS本机弹出窗口。 但是,如果选择任何其他语言,则该语言取决于iPad设置中的“首选语言顺序”。
如果选择了上述以外的语言,应如何将语言默认为英语? 例如,如果我选择葡萄牙语,则需要默认语言为英语。即本地弹出窗口应以英文显示。 预先感谢。
我也尝试添加以下内容
以上方法均无效。
如果我选择葡萄牙语(info.plist中未提及),则我需要默认语言为英语。即本地弹出窗口应以英文显示。
答案 0 :(得分:0)
原因:
似乎iOS设计了语言顺序。我从一边测试了本地化演示,然后得出以下结论:
iOS
将在Preferred language order
中选择语言,如果他在Preferred language order
中找到了相应的语言,他将选择语言作为您应用的语言。 (这引起了您的问题)iOS
将使用您在CFBundleDevelopmentRegion
定义的语言作为默认语言。解决方案:
您可以决定在代码中使用哪种语言。拿起手机的current language
,然后按照自己的逻辑选择language
和current language
。
string[] languages = NSLocale.PreferredLanguages;
// GET you current language in setting
NSString language = new NSString(languages[0]);
NSString esStr = new NSString("es");
NSString jaStr = new NSString("ja");
NSString frStr = new NSString("fr");
//decide here which language to use
if (language.HasPrefix(esStr))
{
//do in Spanish
}
else if (language.HasPrefix(jaStr))
{
//do in japanese
}
else if (language.HasPrefix(frStr))
{
//do in french
}
else {
// SET your language to english here as default language
}