3

鉴于 -[NSBundle 本地化] 返回的本地化目录

(en, es, it, nl)

以及由 -[NSLocale preferredLanguages] 返回的用户设置的语言首选项

(en、es、nl、ja、fr、de、it、pt-PT、sv、nb、fi、zh-Hans、zh-Hant、ko)

我希望 -[NSBundle preferredLocalizationsFromArray:] (或 -preferredLocalizations 或 -preferredLocalizationsFromArray:forPreferences:) 以首选语言顺序返回所有四种可用的本地化。

相反,-preferredLocalizationsFromArray: 仅返回“en”作为本地化资源的可行来源。

为什么?

4

2 回答 2

2

文档preferredLocalizationsFromArray:

从指定列表中返回一个或多个本地化,捆绑对象将使用该列表为当前用户定位资源。

我猜这是一个而不是或多个

你可能应该提交一个关于它的错误。

于 2011-06-10T12:22:31.913 回答
0

此行为在 iOS 10 中仍然相同。看起来返回的数组将包含多个条目,前提是这些条目被认为是兼容的。

例如,如果您的包支持“pt”和“pt-BR”,并且用户选择了“pt-BR”作为他们的首选语言,那么[[NSBundle mainBundle] preferredLocalizations]将返回("pt-BR","pt"),因为如果“pt”返回到“pt”内容是可以接受的-BR”内容丢失。

于 2017-03-24T00:01:26.033 回答