为什么约束不起作用?

时间:2016-11-17 08:25:24

标签: ios swift uicollectionview constraints

肖像模式

enter image description here

横向模式

enter image description here

使用UICollectionView(CV)实现标签栏。在简历中我添加了4个项目:

addSubview(collectionTab)
addConstraints(NSLayoutConstraint.constraints(withVisualFormat: "H:|[v0]|", options: NSLayoutFormatOptions(), metrics: nil, views: ["v0":collectionTab]))
addConstraints(NSLayoutConstraint.constraints(withVisualFormat: "V:|[v0]|", options: NSLayoutFormatOptions(), metrics: nil, views: ["v0":collectionTab]))

当我更改方向时,约束不起作用。为什么?我该如何解决? 我认为在更改视图时不会重新计算项目的大小。

项目大小:

func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
    return CGSize(width: frame.width/4, height: frame.height)
}

1 个答案:

答案 0 :(得分:0)

尝试在invalidateLayout的{​​{1}}上投放UICollectionViewLayoutLike this

UICollectionView