我有以下看法:
我必须将aUIButton
或aUILabel
放在账户余额下方,这取决于此移动是否被拒绝(只需检查变量)。
根据这一点,我已经通过编程方式创建了but t on&label,但是我不知道如何将其添加到特定的位置并添加约束。
func checkRejected () {
if !movement.rejected {
let xposition = amountLabel.frame.origin.x
let yposition = balanceLabel.frame.origin.y + 300
let button = UIButton(frame: CGRect(x: xposition, y: yposition, width: 100, height: 50))
button.setTitle("Reject", for: .normal)
button.setTitleColor(UIColor.blue, for: .normal)
button.addTarget(self, action: #selector(rejectAction), for: .touchUpInside)
self.view.addSubview(button)
}
else {
let xposition = amountLabel.frame.origin.x
let yposition = balanceLabel.frame.origin.y + 300
let label = UILabel(frame: CGRect(x: xposition, y: yposition, width: 100, height: 50))
label.text = "Rejected"
label.textColor = UIColor.red
self.view.addSubview(label)
}
}
我怎么能这么做?
最佳答案
你可以试试
self.view.addSubview(button)
button.translatesAutoresizingMaskIntoConstraints = false
NSLayoutConstraint.activate([
button.topAnchor.constraint(equalTo: self.balanceLabel.bottomAnchor,constant:30),
button.centerXAnchor.constraint(equalTo: self.view.centerXAnchor),
])
标签也一样
注意:由于按钮和标签有一个内在的内容大小,所以我们不必设置宽度和高度
关于ios - 通过编程快速定位和约束,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53674570/