今天写代码的时候,碰到一个小问题,一直很少接触UITableViewCell
的contentView
。我们在设计自定义cell的时候,很可能会把控件添加到contentView
里面,也可以直接添加到cell里面。
[self addSubView:label];
// 或者or
[self.contentView addSubView:label];
两个方法都可以添加控件到cell里面,但是又不知道有什么区别。
然而老司机可以告诉你,是有的😁
这里简单说明一下[self addSubView:label];
会怎么样吧!
1.png
当我调用这个方法的时候
-(void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
左边的两个label会因为
删除delete
的icon出现,控件会右移,而右边那个在职
那个label
却没有发生位移。是不是有疑问呢?我把左边的两个
label
添加到contentView
里面,右边的label
添加到cell
里面。到这里我想大家应该明白添加到不同的地方,对项目有着不同的影响,不只是控件的位移,还有backgroundView也是需要考虑的范围。以上只是个人小记,不对之处望请指教😂。