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];
}];

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

你可能感兴趣的:(tableview 刷新某一行,cell出现闪的现象)