tableview 刷新某一行,cell出现闪的现象

1、项目中,tableviewcell采用自适应高度,利用stackview动态改变每一行cell的高度,cell中自定义button,点击可将cell展开和折叠,这时调用了

[tableView reloadRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationNone];

方法,刷新当前cell的数据,改变高度。
cell中的图片出现闪动的现象,因为采用的是动态改变高度,在数据模型中并未根据内容计算cellHeight,所以出现刷新闪的现象,添加如下代码后,cell正常显示

//视图转换时不执行动画,参数为block对象,来执行你要执行的代码
+ (void)performWithoutAnimation:(void (^)(void))actionsWithoutAnimation

官方解释为
actionsWithoutAnimation
The view transition code that you want to perform without animation.
在没有动画的情况下执行的视图过渡代码。

[UIView performWithoutAnimation:^{
    [tableView reloadRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationNone];
}];

禁止隐式动画,页面不再闪

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容