请教一个tableview 右侧索引实现的思路

clipboard.png
我现在能实现这种效果, 但是如何我想让右侧的这些索引 不管数据源的数据如何都显示A-Z, 想iphone手机通讯录那样, 有什么思路吗

阅读 5k
4 个回答

这个是官方支持的呀。

- (NSArray *)sectionIndexTitlesForTableView:(UITableView *)tableView {
    return @[@"A", @"B", @"C", @"D"……];
}

这里把 26 个字母都排上不就行了吗。

可以实现。查询一下 UITableView Section Index 相关的内容,应该可以找到你想要的答案。

你应该修改你自己的数据源,因为索引标签显示数量是根据你数据源的数组count计算的;
你在你原有数据源中给予26个数组,然后再在对应对象中填充数据;
这样你再使用sectionIndexTitlesForTableView方法,返回26个英文字母数组就OK了。

//返回27,是a-z和#
UILocalizedIndexedCollation *indexCollation = [UILocalizedIndexedCollation currentCollation];     
[self.titleArray addObjectsFromArray:[indexCollation sectionTitles]];      
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题