解决方案 »

  1.   

    添加cell时的代码呢?这看不出来呀
      

  2.   

    我觉得是在cell reuseidentifier的时候把index.row=0的内容带到了下一个cell 所以你每个cell都有那个按钮
      

  3.   

    cell复用问题。我的建议: 
    现在你除了需要实现图上的功能以外,还需要考虑多尺寸设备的问题。如果还是使用硬编码的方式,可能在适配其它尺寸的设备时无法达到满意的效果。那么我给的建议是,基于你上面的图,你完全可以通过添加一个xib文件来设计你要实现的效果,再配合AutoLayout来布局。 
    解决方法:
    可以自定义出来一个继承自UITableViewCell的子类与设计的xib绑定。cell的初始化交给系统来托管,还有一个要注意的是复用根据指定的Identifier 来加载cell。所以头部的cell要和其它cell的identifier区分开。伪代码:////////identifier 的宏定义
    #define kHeaderCellIdentifier  @"headerCellIdentifier"
    #defin kCellIdentifier @"CellIdentifier"
    //////系统托管cell 的创建
    UINib *nib =  [UINib nibWithNibName:@"your_cells_nib_name" bundle:nil];
    [self.tableView registerNib:nib forCellReuseIdentifier:kHeaderCellIdentifier];
    [self.tableView registerClass:[UITableViewCell class]  forCellReuseIdentifier:kCellIdentifier];//////////在cellForRowAtIndexPath 代理方法中
    if (indexPath.row==0) {
            YourCustomCell *cell = [tableView dequeueReusableCellWithIdentifier:kHeaderCellIdentifier];
            //////.......to do 
           return cell;
    }else {
             UITableViewCell *cell =  [tableView dequeueReusableCellWithIdentifier:kCellIdentifier];
            //////.....to do
            return cell; 
    }
      

  4.   

    要是加按钮的时候,现在cell的代理里遍历一下cell.contentview,如果有按钮,先删除,再添加。避免重用造成的问题。