编程新手,如果这是一个初学者的问题,请原谅我。
我有一个自定义按钮类(DropDownPicker),我根据在故事板上创建的占位符UIButton的约束对其进行了初始化。换句话说,我在情节提要中创建一个占位符,使其成为插座,然后将我的自定义按钮初始化为具有相同的约束。
在视图控制器的ViewDidLoad中,我有这个:
let button = DropDownPicker.init(frame: CGRect(x: 0, y: 0, width: 0, height: 0))
self.view.addSubview(button)
button.translatesAutoresizingMaskIntoConstraints = false
button.centerXAnchor.constraint(equalTo: placeholder.centerXAnchor).isActive = true
button.centerYAnchor.constraint(equalTo: placeholder.centerYAnchor).isActive = true
button.leadingAnchor.constraint(equalTo: placeholder.leadingAnchor).isActive = true
button.trailingAnchor.constraint(equalTo: placeholder.trailingAnchor).isActive = true
button.topAnchor.constraint(equalTo: placeholder.topAnchor).isActive = true
button.bottomAnchor.constraint(equalTo: placeholder.bottomAnchor).isActive = true
在DropDownPicker类中,我有:
override init(frame: CGRect) {
super.init(frame: frame)
layer.cornerRadius = 15
layer.masksToBounds = true
clipsToBounds = true
}
奇怪的是,如果我在没有任何约束的空视图控制器中创建占位符,它将起作用。但是,如果添加约束,它就会消失。任何想法为什么会这样?
谢谢!