我对如何使约束在代码中起作用感到困惑。我以为我知道了,但我没有。我已通过代码在视图中添加了各种元素。窗口调整大小后,我不希望它们移动。因此,这是垂直调整窗口大小时发生的情况:
我尝试了以下代码来锚定我创建的第一个标签:
let horizontalConstraint = view.centerXAnchor.constraint(equalTo: view.leftAnchor)
let verticalConstraint = view.centerYAnchor.constraint(equalTo: view.topAnchor)
for i in 0 ..< 10 {
let label = NSTextField(frame: NSRect(x: 10,y: y,width: 100,height: 25))
label.addConstraints([horizontalConstraint,verticalConstraint])
label.stringValue = full[i]
label.isBezeled = false
label.backgroundColor = .none
label.font = NSFont.systemFont(ofSize: 14,weight: .bold)
view.addSubview(label)
//more code here
}
出现的黑框位于没有元素的区域。我在代码中添加的元素在“特征”标签和“交换所选”按钮之间。我显然不知道我在做什么!