Sha*_*lam 5 constraints aspect-ratio ios swift3
我在故事板中有一个UIImageView,AspectRatio是1:1,在某些情况下,我想在ViewController中以编程方式更改为2:1.我在ViewController中创建了该约束的引用,但无法设置约束.
您可以在swift 3中以编程方式更改约束
let aspectRatioConstraint = NSLayoutConstraint(item: self.YourImageObj,attribute: .height,relatedBy: .equal,toItem: self.YourImageObj,attribute: .width,multiplier: (2.0 / 1.0),constant: 0)
self.YourImageObj.addConstraint(aspectRatioConstraint)
Run Code Online (Sandbox Code Playgroud)
如Apple指南中所述,可以通过三种方式以编程方式设置约束:
设置约束的最方便,最流畅的方法是使用布局锚。
更改ImageView的长宽比仅需一行代码
imageView.heightAnchor.constraint(equalTo: imageView.widthAnchor, multiplier: 1.0/2.0).isActive = true
Run Code Online (Sandbox Code Playgroud)
避免“ [LayoutConstraints]无法同时满足约束。” 您应该添加对ImageView的高度约束的引用,然后将其停用:
heightConstraint.isActive = false
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9116 次 |
| 最近记录: |