waynezxcv / Gallop

A framework for build smooth asynchronous iOS APP.
MIT License
746 stars 161 forks source link

用在列表单元格 刷新抖动很大 #32

Closed ap0806109 closed 7 years ago

ap0806109 commented 7 years ago

用在列表单元格 调用 [self.tableview reloadData]; 刷新抖动很大 有什么好的解决方法呢

waynezxcv commented 7 years ago

由于是异步绘制跟内容延迟加载。所以直接刷新会出现这种情况。 下面提供几个解决办法: 整个tableView刷新时: 1.可以在刷新前将LWAsyncDIsplayView的displaysAsynchronously属性设为NO,刷新完设为YES. 2.用下面这段代码 [self.tableView beginUpdates]; [self.tableView reloadSections:[NSIndexSet indexSetWithIndex:0] withRowAnimation:UITableViewRowAnimationFade]; [self.tableView endUpdates]; [self.tableView reloadData]; 代替 [self.tableView reloadData]; 可以有效减少这种情况。 3.尽量避免在LWLayout属性没有变化时的刷新。

单个Cell刷新时: 像Demo中那样,刷新前截图覆盖,刷新完移除。

其他: 用过场动画覆盖刷新过程,让用户察觉不到。比如刚Present一个UIViewContrller时。

ap0806109 commented 7 years ago

好的 谢谢