我正在尝试将uiview xib加载到我的UINavigationBar右侧项目中,该视图加载正常,但视图中的所有元素(如按钮/开关)均无法正常工作,甚至无法单击并用作静态图像。
class MyView: UIView {
@IBOutlet private var view: UIView!
required init() {
self.init()
commonInit()
}
override init(frame: CGRect) {
super.init(frame: frame)
commonInit()
}
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
commonInit()
}
private func commonInit() {
Bundle.main.loadNibNamed("MyView", owner: self, options: nil)
addSubview(buttonContainerView)
view.frame = self.bounds
view.autoresizingMask = [.flexibleHeight, .flexibleHeight]
}
我想将此视图放在导航项目上的VC的viewDidLoad内:
let button = UIBarButtonItem(customView: MyView())
navigationItem.rightBarButtonItem = button
什么是最好的方法?如果我以编程方式创建视图,则效果很好。但是这种方式无法正常工作。