UITableView添加索引

要添加索引首先要给tableview分节。

然后需要实现tableview的数据源协议的如下方法:
- (NSArray *) sectionIndexTitlesForTableView: (UITableView *) tableView

如:

- (NSArray *) sectionIndexTitlesForTableView: (UITableView *)tableView {
    
    NSMutableArray *listTitles = [[NSMutableArray alloc] init];
    for (NSString *item in self.listGroupname) {
          NSString *title = [item substringToIndex: 1];
          [listTitles addObject: title];
    }

    return listTitles; 
}

其中,self.listGroupname是一个NSArray类型,里面存放的是每个section的名称,数据为“A组,B组,C组,D组,E组,F组”。上述方法就是把数据截取一部分,将索引设为“A,B,C,D,E,F”。

- (NSString *)substringToIndex:(NSUInteger)to;是�用于截取字符串的方法,用中文理解读作——保留到...
于是上面的方法就是将“A组”保留到索引值1为止,索引值从0开始。但是,substringToIndex: 是不包括作为参数的那个索引值的,所以结果是保留到索引值为1前面为止。

类似的一个方法是: - (NSString *)substringFromIndex:(NSUInteger)from;
即从...开始保留,�与上面的substringToIndex不同的一点是,它包括作为参数的那个索引值。

如:我要把"2016-01-01,2016-01-02,2016-01-03,2016-01-04,2016-01-05,2016-01-06"这些数据截取到只剩下月-日的格式,像“01-01,01-02”,就可以用这个方法

- (NSArray *) sectionIndexTitlesForTableView: (UITableView *)tableView {
    
    NSMutableArray *listTitles = [[NSMutableArray alloc] init];
    for (NSString *item in self.listGroupname) {
            NSString *title = [item substringFromIndex: 5];
            [listTitles addObject: title];
    }

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

相关阅读更多精彩内容

友情链接更多精彩内容