37

不知道是不是真的理解info.plist文件中“Localization native development region”条目的作用。

我在某处读到此条目允许在与语言资源目录不匹配时指定应用程序语言。

我有一个以三种语言本地化的应用程序:英语、意大利语和西班牙语(en.lproj、it.lproj 和 es.lproj),我将“本地化本地开发区域”条目设置为意大利。当我在“设置”中更改语言和区域设置时(例如通过选择阿拉伯语和适当的区域),应用程序语言为英语。当我在 info.plist 中将“本地化本地开发区域”设置为意大利时,不应该是意大利语吗?

有任何想法吗?它会与 AppStore 应用描述语言相关联吗?

4

3 回答 3

16

从 CFBundle 文档:

kCFBundleDevelopmentRegionKey 包的开发语言的名称。当 CFBundle 查找资源时,回退是查找名称由 Info.plist 文件中的 kCFBundleDevelopmentRegionKey 给出的 lproj。因此,您必须确保一个包包含一个具有该确切名称的 lproj,其中包含每个本地化资源的副本,否则 CFBundle 不能保证回退机制将起作用。在 iOS 2.0 及更高版本中可用。在 CFBundle.h 中声明。

与 AppStore 描述语言无关。

于 2011-03-04T08:14:10.797 回答
6

我使用以下设置解决了问题。

设置

于 2014-04-09T18:23:42.687 回答
2

本机开发区域还设置 VoiceOver 使用的默认语言。如果您正确设置此项,您将不必覆盖应用程序中使用的所有默认组件中的可访问性语言(回退到英语)。

于 2011-04-12T08:31:34.517 回答