裁剪属性clipsTobounds
使用场景
使用场景总结:
不希望所有子视图显示超过父视图范围
比较典型的例子:
- 裁剪圆角,配合
cornerRadius
删除table view cell方式
主要有两种方式:table view刷新和直接删除table view cell。
1、全量刷新
- 先remove数据源
- 然后
reloadData
一下
2、通过控制table view cell高度
直接设置对应cell的数据源的高度为0
再
reloadData
或者调beginUpdates
和endUpdates
3、差量刷新cell,隐藏对应cell
- (void)reloadRowsAtIndexPaths:(NSArray<NSIndexPath *> *)indexPaths withRowAnimation:(UITableViewRowAnimation)animation;
注意:如果我们列表里边只有一个特定的cell,并且不希望生成新的cell时,需要慎用此方法刷新。
4、直接删除cell(推荐)
- (void)deleteRowsAtIndexPaths:(NSArray<NSIndexPath *> *)indexPaths withRowAnimation:(UITableViewRowAnimation)animation
注意:如果有删有插入行
1、必须放在beginUpdates
和endUpdates
之间
2、table view 总是先删后插入行,所以我们在对数据源的数组操作的时候,应该是先删后插入