iOS通讯录索引以及排序UILocalizedIndexedCollation

头文件里的属性以及方法的用途:

UILocalizedIndexedCollation头文件

一共包含4个方法,两个属性:

sectionTitles:获取索引数组,中英文就27个(A-Z,#),其他的就不知道了,会根据语言的不同而改变。

sectionIndexTitles:提供用于快速跳转到特定部分的索引标题的列表。

currentCollation:初始化方法,会根据不同国家初始化出不同的结果。

- (NSInteger)sectionForSectionIndexTitleAtIndex:(NSInteger)indexTitleIndex:用于滚动到指定索引列表的方法。

- (NSInteger)sectionForObject:(id)object collationStringSelector:(SEL)selector:根据此方法可获取name所在的位置(例如:“简书”首字母是 j 那么sectionNumber 就是9,第一个A是0)。

- (NSArray*)sortedArrayFromArray:(NSArray*)array collationStringSelector:(SEL)selector:对每个section中的数组按照name属性排序,就是对每个字母下的所有名字进行排序。

所谓通讯录的话,就是一个table加上scetion title 和索引,有了获取索引的方法,剩下的就是table了,table的数据源应该是个二维数组(@[@[],@[],@[]]),数组能存的当然是person对象了,至于对象包含信息,有自己决定。有了name所在位置的方法和对name排序的方法,数据源就搞定了。最后一个,点击索引滚动到指定列表的方法就完美了。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容