Swift UIImageView在StackView和TableViewCell中不是自动高度
这是视图层次结构 我希望PhotoImgView自动高度取决于图像大小 该映像是从服务器下载的 我用翠鸟下载图片 下载完成后,我设置了PhotoImgView的高度约束,并在cell类中执行layoutIfNeeded() 但它不会立即更新UI 当我滚动到另一个单元格,让该单元格不可见,然后再向后滚动时,该单元格将是正确的 我该怎么做 collectionView也存在同样的问题,我在collectionView.reloaData之后设置了collectionView的高度约束,并获取collectionView.contentSize.height尝试以下操作: 用以下内容替换当前的Swift UIImageView在StackView和TableViewCell中不是自动高度,swift,uitableview,uicollectionview,ios-autolayout,uistackview,Swift,Uitableview,Uicollectionview,Ios Autolayout,Uistackview,这是视图层次结构 我希望PhotoImgView自动高度取决于图像大小 该映像是从服务器下载的 我用翠鸟下载图片 下载完成后,我设置了PhotoImgView的高度约束,并在cell类中执行layoutIfNeeded() 但它不会立即更新UI 当我滚动到另一个单元格,让该单元格不可见,然后再向后滚动时,该单元格将是正确的 我该怎么做 collectionView也存在同样的问题,我在collectionView.reloaData之后设置了collectionView的高度约束,并获取coll
layoutifneed()
:
DispatchQueue.main.async {
self.layoutIfNeeded()
}
在
layoutifneed()之前尝试调用setNeedsLayout()
要获得集合视图高度的正确结果,您可以尝试:
collectionView.reloadData()
collectionView.setNeedsLayout()
collectionView.layoutIfNeeded()
collectionView.collectionViewLayout.invalidateLayout()