ios UItableView,UITableViewHeaderFooterView分组

当前位置:  编程 >  移动开发 >  iphone >

ios UItableView,UITableViewHeaderFooterView分组头部的重用机制,简单地仿射变换

怎样设置包括第一栏在内相同高度的section(小技巧,虽然容易但容易忽略) *第一步,在viewdidload里将尾部设为0,table.sectionFooterHeight = 0;(代理方法)- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section{

怎样设置包括第一栏在内相同高度的section(小技巧,虽然容易但容易忽略)

*第一步,在viewdidload里将尾部设为0,table.sectionFooterHeight = 0;(代理方法)- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section{

return 0;

}虽然也可以设置尾部高度,但是设置后没有效果

第二步,调用tableView的代理方法- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section{

return 30;

}设置头部高度为30;

运行结果

 

自定义分组头部的重复利用(类似cell)

如果自定义分组头部

为了内存优化,可以使用类似cell的重用机制来实现

 

#pragma mark - 自定义分组头部

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

static NSString * identy = @"headFoot";

 

UITableViewHeaderFooterView * hf = [tableView dequeueReusableHeaderFooterViewWithIdentifier:identy];

if (!hf) {

NSLog(@"%li",section);

hf = [[UITableViewHeaderFooterView alloc]initWithReuseIdentifier:identy];

UIView * view = [[UIView alloc]initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, 44)];

view.backgroundColor = [UIColor redColor];

[hf addSubview:view]; (若将此注释:view未添加)

}

// hf.contentView.backgroundColor = [UIColor purpleColor];(去掉此行注释:可设置hf。contentView背景色),若此行和上一行都不注释,显示红色

return hf;

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值