如何在单击按钮时更改UICollectionView的高度

时间:2019-06-26 19:40:12

标签: ios swift xcode uicollectionview

当我单击按钮时,我正在尝试更改集合视图和视图的高度。但是,当我单击按钮时,视图的高度会改变,但collectionview的高度不会改变。

这是我的代码:

@IBAction func button(_ sender: Any) {
        UIView.animate(withDuration: 1, animations: {
            self.backView.frame.size.height -= 160
            self.collectionView.frame.size.height -= 160
            UIView.animate(withDuration: 0.3, delay: 0, options:     .curveEaseOut,
                                       animations:     self.view.layoutIfNeeded, completion: nil)

        }, completion: nil)
    }

我该怎么做才能同时调整collectionview的大小?

1 个答案:

答案 0 :(得分:0)

如果在该集合视图上使用了约束,则需要更改高度约束的常数,而不是其框架。 像这样:

@IBAction func button(_ sender: Any) {
        UIView.animate(withDuration: 1, animations: {
              self.backView.frame.size.height -= 160
              self.collectionViewHeightConstraint.constant = <value>
              self.view.layoutIfNeeded()
            }, completion: nil)
        }