UILocalizedIndexedCollation 不显示汉字
Posted
技术标签:
【中文标题】UILocalizedIndexedCollation 不显示汉字【英文标题】:UILocalizedIndexedCollation not showing chinese characters 【发布时间】:2012-07-16 16:59:15 【问题描述】:在我的 iphone 应用程序中,我使用英语、西班牙语、俄语和中文本地化。本地化适用于所有本地化字符串。但是 UILocalizedIndexedCollation 不适用于中文。当我将设备语言更改为英语、西班牙语和俄语时,表格索引显示正确。但是当我将设备语言设置为中文时,我得到的是英文的表索引,同时本地化的字符串本身就是中文的。
[[UILocalizedIndexedCollation currentCollation] sectionIndexTitles]
上面的代码为中文本地化返回一个英文字母数组,而它为其他三种语言(英语、西班牙语和俄语)返回正确的字符数组。
我正在使用以下 .lproj 文件进行本地化
-
英语 - en.lproj
西班牙语 - es.lproj
俄语 - ru.lproj
中文 - zh_Hans.lproj
谁能帮我找出问题。
谢谢。
【问题讨论】:
【参考方案1】:苹果http://developer.apple.com/library/ios/#qa/qa1739/_index.html#//apple_ref/doc/uid/DTS40011151
UILocalizedIndexedCollation 使用的本地化数据 运行时将基于您的应用程序的本地化 捆绑正在使用。如果您的应用程序仅支持英语,并且 设备设置为使用繁体中文,UILocalizedIndexedCollation 只会显示英文部分标题并将行排序到“A” 通过“Z”和“#”部分,即使 UILocalizedIndexedCollation 能够提供繁体中文章节标题和排序 行数据到这些部分。
要解决这个问题,您的应用程序包必须正确声明支持 对于您希望 UILocalizedIndexedCollation 支持的语言。你 可以通过添加 适当的 .lproj 文件夹,或通过指定支持的本地化 在应用程序 info.plist 中的 CFBundleLocalizations 键中 文件。请注意,前一种方法是首选,因为它更容易 维护是否需要将本地化资源添加到您的应用程序 未来
【讨论】:
不确定您是否帮助了提问者,但指向 Apple 文档的链接正是我正在寻找的信息,谢谢。以上是关于UILocalizedIndexedCollation 不显示汉字的主要内容,如果未能解决你的问题,请参考以下文章
UILocalizedIndexedCollation 和非英文索引
UILocalizedIndexedCollation 区域设置不同于英语
使用 UILocalizedIndexedCollation sectionForObject:collationStringSelector 的动态选择器
带有字符串数组的 UILocalizedIndexedCollation
如何在 UILocalizedIndexedCollation 中将汉字排序为#
带有索引 UITableViewController 和 UILocalizedIndexedCollation 的 NSFetchedResultsController