ios - localizedString ForKey :value:table ignores Base localization

标签 ios localization

我的应用程序需要本地化为两种语言:德语和英语。德语应该是基础语言。这意味着应用程序应该始终本地化为德语,除非设备上的语言是英语(在这种情况下它应该是英语)

我有用于本地化的自定义 *.string 文件,并使用 localizedStringForKey:value:table 来本地化字符串。

当我只有基本本地化时,一切正常。但是如果我添加英语本地化,出于某种原因 localizedStringForKey:value:table 只是忽略基本本地化并始终使用英语(对于所有语言)

这是我添加英文后的样子: enter image description here

下面是我如何本地化字符串:

[[NSBundle mainBundle] localizedStringForKey:@"key" value:@"" table:@"Shared"]

我正在模拟器上测试,这是我的语言屏幕: enter image description here

有谁知道可能是什么问题?提前致谢!

最佳答案

正如我在评论中提到的,您需要将 Info.plist 中的本地化 native 开发区域 ( CFBundleDevelopmentRegion ) 设置为您的语言代码。 Xcode 似乎将其设置为 en_GBde_DE 样式的区域代码,将其设置为 de(无区域)将修复它。请注意,默认情况下它是 en,但选择 United KingdomGermany 会将其更改为使用更长的代码。

关于ios - localizedString ForKey :value:table ignores Base localization,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23273832/

相关文章:

ios - NSDateFormatter 不支持长格式的日期周期 ('b' 或 'B' )

OAuth 2 流程上的 iOS 9 WKWebView didReceiveAuthenticationChallenge

ios - iOS 上的 Realm : crash while creating nested object with primaryKey

iphone - UITableView 的本地化索引

mysql - 选择多篇翻译文章(记录)

asp.net-mvc - 如何避免 ASP.NET MVC Html Helpers(如 RouteLink)中的默认 URL 编码

ios - Resize MKAnnotationView Image 本地图放大和缩小时?

ios - CoreData 未触发故障

ios - 在后台的 tableView 中附加数据 - iOS

swift - Swift 中的 localizeWithFormat 和可变参数