Autolayout:UICollectionViewCell的更新约束不起作用

时间:2014-12-05 14:58:39

标签: ios swift autolayout uicollectionviewcell

尝试在我的collectionViewCell上更新我的UILabel约束时遇到问题。 我的原型单元格如下:

Cell Prototype

我的目标是:我需要编辑红色标签顶部约束的常量,这取决于我是否隐藏绿色标签。

我是如何进行的?

  • 我为红色标签上的约束添加了一个IBoutlet(带有红色箭头的那个):

    @IBOutlet weak var descriptionTopToPrice: NSLayoutConstraint!

  • 然后:

    descriptionTopToPrice.constant = 2

    self.contentView.setNeedsUpdateConstraints()

但它不起作用,并且约束不会更新。

我错过了什么吗?

1 个答案:

答案 0 :(得分:0)

在您的方法中,您必须在代码中硬编码约束的值。对于类似的目标,我通常会制作2个约束,一个用于默认布局,另一个用于更改。您可以将第二个的优先级设置为低于第一个的优先级。这样您以后可以删除代码中的第一个约束并调用布局方法。因此,具有较低优先级的第二个约束将取代它。