首页 > 代码库 > tableview小结-初学者的问题
tableview小结-初学者的问题
初学者的问题主要集中在,下面几个问题:
一、几个函数总是不被调用:例如:
[objc] view plaincopy
- - (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section;
这个代理不被调用的种类很多:
1. section的count没有正确
2. 没有设置代理
3.如果没有设置seciton的高度,仍然不会被调用。
二,如何在tableview右侧显示索引(拼音条)
代码很简单:
[objc] view plaincopy
- -(NSArray *)sectionIndexTitlesForTableView:(UITableView *)tableView
- {
- return _pinyinIndexArray;
- }
前提是需要初始化_pinyinIndexArray
[objc] view plaincopy
- _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中注册
[objc] view plaincopy
- [TableView registerClass:[customHeaderView class] forHeaderFooterViewReuseIdentifier:HeaderIdentifier];
第二步:
是现这个代理
[objc] view plaincopy
- - (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小结-初学者的问题
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。