码迷,mamicode.com
首页 > 其他好文 > 详细

tableview小结

时间:2014-10-27 14:25:20      阅读:120      评论:0      收藏:0      [点我收藏+]

标签:uitableview

初学者的问题主要集中在,下面几个问题:

一、几个函数总是不被调用:例如:

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section;

这个代理不被调用的种类很多:

1. section的count没有正确

2. 没有设置代理

3.如果没有设置seciton的高度,仍然不会被调用。


二,如何在tableview右侧显示索引(拼音条)

代码很简单:

-(NSArray *)sectionIndexTitlesForTableView:(UITableView *)tableView
{
    return _pinyinIndexArray;
}

前提是需要初始化_pinyinIndexArray

    _pinyinIndexArray = @[@"A",@"B",@"C",@"D",@"E",@"F",@"G",@"H",@"I",@"J",@"K",@"L",@"M",@"N",@"O",@"P",@"Q",@"R",@"S",@"T",@"U",@"V",@"W",@"X",@"Y",@"Z",@"#"];

三、获取table的header view的时候,即调用headerViewForSection:,返回空

需要两步:

第一步:

在- (void)viewDidLoad中注册

 [TableView registerClass:[customHeaderView class] forHeaderFooterViewReuseIdentifier:HeaderIdentifier];

第二步:

是现这个代理

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
    static NSString *headerReuseIdentifier = @"TableViewSectionHeaderViewIdentifier";

    // ****** Do Step Two *********
    M3CHeaderFooter *sectionHeaderView = [tableView dequeueReusableHeaderFooterViewWithIdentifier:headerReuseIdentifier];
   // Display specific header title
   sectionHeaderView.textLabel.text = @"specific title";   

    return sectionHeaderView;    
}

四、类似qq列表的展开,折叠的实现

本人是从数据模型上入手,数据模型有一个bool变量isExpand标记是否折叠,tableview只是从数据模型上获取count和cell。如果isExpand=no则返回count=0.tableview自然就是一个空的分组。

另外还有就是,可以从tableview入手:记录一个数组,记录者每一个header是否折叠。同样可以实现折叠的效果。

tableview小结

标签:uitableview

原文地址:http://blog.csdn.net/hherima/article/details/39929523

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!