gpt4 book ai didi

ios - 以编程方式使用自动布局约束的问题

转载 作者:行者123 更新时间:2023-11-30 12:58:18 25 4
gpt4 key购买 nike

我有这样的情况:

enter image description here

我想要这个:

黑色 View 位于紫罗兰色 View 之间的 X 距离处,如果我在紫罗兰色 View 中点击 I 按钮,紫罗兰色 View 的高度会减小(或增加),并且我希望黑色 View 与紫罗兰色 View 之间的 X 距离相同。为此我编写了这段代码:

对于增加或减少紫罗兰 View 的按钮事件,我使用此方法:

@IBAction func tapOpenButton(){

self.altezza.constant = self.altezza.constant + 20

}
@IBAction func tapCloseButton(){

self.altezza.constant = self.altezza.constant - 20

}

其中altezza是一个NSLayoutConstraint

两个 View 都在 ScrollView 中,我通过代码设置约束:

var newView = blackView
var view = violetView
let horizontalConstraint = NSLayoutConstraint(item: newView, attribute: NSLayoutAttribute.centerX, relatedBy: NSLayoutRelation.equal, toItem: view, attribute: NSLayoutAttribute.centerX, multiplier: 1, constant: 0)

let verticalConstraint = NSLayoutConstraint(item: newView, attribute: NSLayoutAttribute.centerY, relatedBy: NSLayoutRelation.equal, toItem: view, attribute: NSLayoutAttribute.centerY, multiplier: 1, constant: 120)
let widthConstraint = NSLayoutConstraint(item: newView, attribute: NSLayoutAttribute.width, relatedBy: NSLayoutRelation.equal, toItem: nil, attribute: NSLayoutAttribute.notAnAttribute, multiplier: 1, constant: 100)
let heightConstraint = NSLayoutConstraint(item: newView, attribute: NSLayoutAttribute.height, relatedBy: NSLayoutRelation.equal, toItem: nil, attribute: NSLayoutAttribute.notAnAttribute, multiplier: 1, constant: 100)

self.altra.addConstraints([horizontalConstraint,verticalConstraint, widthConstraint, heightConstraint])

altra 是两个 View 所在的 ScrollView

我的问题是,当我减小或增加紫罗兰色的高度时,紫罗兰色 View 和黑色 View 之间的距离不一样,特别是,例如,当我增加紫罗兰色 View 的高度时,紫罗兰色 View 位于黑色 View 下方。我是通过代码自动布局的新手。你能帮我吗?

最佳答案

检查这是否可以代替您的 heightContaint

let heightConstraint = NSLayoutConstraint(item: newView, attribute: NSLayoutAttribute.height, relatedBy: NSLayoutRelation.equal, toItem: view, attribute: NSLayoutAttribute.notAnAttribute, multiplier: 1, constant: 100)

关于ios - 以编程方式使用自动布局约束的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40159459/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com