Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 使用UICollectionViewDelegateFlowLayout后未更新约束_Ios_Swift_Uicollectionview_Uicollectionviewdelegateflowlayout - Fatal编程技术网

Ios 使用UICollectionViewDelegateFlowLayout后未更新约束

Ios 使用UICollectionViewDelegateFlowLayout后未更新约束,ios,swift,uicollectionview,uicollectionviewdelegateflowlayout,Ios,Swift,Uicollectionview,Uicollectionviewdelegateflowlayout,我正在使用UICollectionViewDelegateFlowLayout生成collectionViewCell的大小和高度,但是当我使用这个时,单元格中的约束不会更新 func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {

我正在使用
UICollectionViewDelegateFlowLayout
生成
collectionViewCell
的大小和高度,但是当我使用这个时,
单元格中的约束不会更新

func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
    return CGSize(width: UIScreen.main.bounds.width - 30, height: self.height)
}

因此,委托方法设置了正确的大小,但单元格中的元素被剪切(未更新)。我的单元格约束在情节提要中设置。

没有太多细节,我想您可能需要:

viewWillLayoutSubviews()

调用以通知视图控制器其视图即将布局其子视图

layoutSubviews()


您可以添加自动布局代码或显示故事板/xib屏幕吗layout@SuhitPatil我不能,但我的约束设置为前导/尾随/顶部。并与高度的contentView成比例。您可以使用自调整大小的单元格为集合视图单元格使用动态高度,其中调用
layoutSubviews()
?原因collectionView中不存在beginUpdate