关于UIButton以编程方式创建但未显示在视图上的问题,我们可以从以下几个方面进行讨论:
let button = UIButton(type: .system)
button.frame = CGRect(x: 100, y: 100, width: 100, height: 50)
button.setTitle("Click Me", for: .normal)
button.addTarget(self, action: #selector(buttonClicked), for: .touchUpInside)
view.addSubview(button)
button.translatesAutoresizingMaskIntoConstraints = false
NSLayoutConstraint.activate([
button.centerXAnchor.constraint(equalTo: view.centerXAnchor),
button.centerYAnchor.constraint(equalTo: view.centerYAnchor),
button.widthAnchor.constraint(equalToConstant: 100),
button.heightAnchor.constraint(equalToConstant: 50)
])
viewDidLoad()
或者viewWillAppear()
方法中添加显示逻辑。addTarget()
方法添加事件处理器:@objc func buttonClicked(sender: UIButton) {
// 处理按钮点击事件
}
总之,要解决UIButton以编程方式创建但未显示在视图上的问题,需要确保UIButton实例已经被正确创建并添加到视图上,同时确保UIButton的显示逻辑和事件处理逻辑已经被正确实现。
领取专属 10元无门槛券
手把手带您无忧上云