从nib文件将UIView加载到rightBarButtonItem中

时间:2019-02-07 23:27:03

标签: swift

我正在尝试将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

什么是最好的方法?如果我以编程方式创建视图,则效果很好。但是这种方式无法正常工作。

0 个答案:

没有答案