这在不同的地区有什么不同吗?我完全不明白该sectionForSectionIndexTitleAtIndex
方法的意义UILocalizedIndexCollation
是什么。我传递的每个索引都只返回相同的索引。
该文档根本不是很有帮助,我似乎找不到任何实例,它返回的数字与我提供的数字不同。为什么不直接返回数字本身?
更糟糕的是,如果我向我的表格视图添加额外的索引,例如UITableViewIndexSearch
一些自定义索引,那么我的表格视图的部分索引标题总共有搜索字符、两个自定义的、字母和 #(总共 30部分标题),我不知道sectionForSectionIndexTitleAtIndex
从方法传入UITableViewDataSource
什么sectionForSectionIndexTitle:atIndex:
!
如果我通过表格视图方法给我的索引(比如 1),它会给我 1,这是错误的,因为如果我点击部分索引 1,它应该跳转到第一个自定义的。所以我应该只在字母部分开始时开始,它从部分索引 3 开始。但如果我将 3 传递给sectionForSectionIndexTitleAtIndex
方法,我会得到 3,而我应该得到 2,因为搜索字符不是实际的部分.
所以我应该只在 3 之后开始,此时我减去 1 以获得实际索引。好的。然后我到达索引 29 处的最后一个部分索引 #。我将 29 - 1(即 28)传递给sectionForSectionIndexTitleAtIndex
,然后我得到一个错误,它超出了范围,因为只有 27 个字符。
在这种情况下我到底应该如何使用它?好像完全没用,感觉只是返回索引而已。但这会在某些语言环境下中断吗?这种方法是如何工作的?