iOS UITableViewCell 的 contentView 小记

今天写代码的时候,碰到一个小问题,一直很少接触UITableViewCellcontentView。我们在设计自定义cell的时候,很可能会把控件添加到contentView里面,也可以直接添加到cell里面。

[self addSubView:label];
// 或者or
[self.contentView addSubView:label];

两个方法都可以添加控件到cell里面,但是又不知道有什么区别。
然而老司机可以告诉你,是有的
这里简单说明一下[self addSubView:label];会怎么样吧!

iOS UITableViewCell 的 contentView 小记_第1张图片
1.png

当我调用这个方法的时候 -(void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
左边的两个label会因为 删除delete的icon出现,控件会右移,而右边那个 在职那个 label却没有发生位移。是不是有疑问呢?
我把左边的两个 label添加到 contentView里面,右边的 label添加到 cell里面。到这里我想大家应该明白添加到不同的地方,对项目有着不同的影响,不只是控件的位移,还有backgroundView也是需要考虑的范围。
以上只是个人小记,不对之处望请指教。

你可能感兴趣的:(iOS UITableViewCell 的 contentView 小记)