iOS tableView reloadData后实时获取内容高

2021-06-01  本文已影响0人  仁者_8d87

在网上遨游了好久,看了好多方式然而没有一个适用的,最后换了种新奇的方法不知道会不会使用与广大码农朋友。

感觉应该先上效果图:

因为我们的项目tableViewCell每行的高度不确定所以使用了自动适应高度的方法,导致的结果就是每次reloadData之后获取内容高度赋值如下:

 dispatch_async(dispatch_get_main_queue(), ^{

        self.table_h.constant = self.chp_table.contentSize.height;    

});

其中self.chp_table使用的约束布局,self.table_h是self.chp_table的高度,结果却是每次显示出来结果高度都不对;

然后用了网上说的直接每行计算高度赋值,发现还是不行手机屏幕宽度不一样导致高度计算偏差有大有小;

最后实在没办法又换回了最开始的方法,只是做了一点微小的调整,到现在我也不理解原理是什么,希望有大神可以解答。

下面是调整过得方法

self.table_h.constant = 100.;   //(不确定是不是随便设置个值都可以)  

dispatch_async(dispatch_get_main_queue(), ^{

        self.table_h.constant = self.chp_table.contentSize.height;

});

希望对大家有所帮助

上一篇下一篇

猜你喜欢

热点阅读