【问题标题】:How to get the height constraint declared by snapkit for UIView?如何获取 snapkit 为 UIView 声明的高度约束?
【发布时间】:2016-08-09 03:24:23
【问题描述】:

例如,我通过 snapkit 为 UIView 声明了一些约束:

timeProgress.snp_makeConstraints { (make) in
  make.left.equalTo(startTime.snp_right).offset(15)
  make.right.equalTo(endTime.snp_left).offset(-15)
  make.height.equalTo(5)
  make.centerY.equalTo(startTime)
}

如何获得 timeProgress 的高度限制?

【问题讨论】:

    标签: swift snapkit


    【解决方案1】:

    你可以持有对高度约束的引用:

    var timeHeightConstraint: Constraint
    
    timeProgress.snp_makeConstraints { (make) in
        make.left.equalTo(startTime.snp_right).offset(15)
        make.right.equalTo(endTime.snp_left).offset(-15)
        self.timeHeightConstraint = make.height.equalTo(5).constraint
        make.centerY.equalTo(startTime)
    }
    

    【讨论】:

      【解决方案2】:

      您需要保持对约束的全局引用。

      let timeProgressHeightConstant = 5.0
      
      timeProgress.snp_makeConstraints { (make) in
          make.left.equalTo(startTime.snp_right).offset(15)
          make.right.equalTo(endTime.snp_left).offset(-15)
          make.height.equalTo(timeProgressHeightConstant)
          make.centerY.equalTo(startTime)
      }
      

      因此,您现在可以访问self.timeProgressHeightConstant

      【讨论】:

      • 谢谢!但我也想知道如何获得它的宽度限制?
      • @tongxing 在这种情况下没有获取宽度约束的捷径。您需要自己手动计算。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-31
      • 1970-01-01
      • 2020-09-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多