下面我的快速代码试图使uisiwtch显示在屏幕中央。正如您在下面的我的照片中看到的。正如您在下图中看到的。开关仅占据屏幕左上方的一小部分。看起来不太好。
var soundSwitch = UISwitch()
NSLayoutConstraint.Activate[(
soundSwitch.leadingAnchor.constraint(equalTo: map.trailingAnchor, constant: 0),
soundSwitch.topAnchor.constraint(equalTo: text.bottomAnchor, constant : 0),
soundSwitch.widthAnchor.constraint(equalTo: view.widthAnchor, multiplier: 1/3, constant: 0),
soundSwitch.heightAnchor.constraint(equalTo: view.heightAnchor, multiplier: 0.07, constant: 0),
)]
替换
soundSwitch.leadingAnchor.constraint(equalTo: map.trailingAnchor, constant: 0),
with
soundSwitch.centerXAnchor.constraint(equalTo: map.centerXAnchor, constant: 0),
顺便说一句,不要忘记
soundSwitch.translatesAutoresizingMaskIntoConstraints = false
此外,最好同时删除这两个
soundSwitch.widthAnchor.constraint(equalTo: view.widthAnchor, multiplier: 1/3, constant: 0),
soundSwitch.heightAnchor.constraint(equalTo: view.heightAnchor, multiplier: 0.07, constant: 0),
由于开关无法缩放