如何将ViewController.swift中的按钮链接到xib文件?

时间:2019-02-13 07:16:06

标签: swift uiviewcontroller uibutton xib

我想在我的视图控制器中创建一个链接到xib文件屏幕的按钮。我需要在ViewController.swift文件的IBAction中编写哪些代码行?

我尝试编写用于将两个情节提要文件连接在一起的代码,但这似乎不起作用。

这是我用于连接到情节提要文件的代码示例,但我用于xib文件使用什么代码:

let storyBoard = UIStoryboard(name: "Main", bundle: nil)
let progressVC = storyBoard.instantiateViewController(withIdentifier: "ProgressVC") as! WGProgressVC.progressVC.modalTransitionStyle = .crossDissolve
self.present(progressVC, animated: true, completion: nil)

我想将Main.storyboard文件连接到xib文件,但是由于我不知道需要编写的代码行而无法正常工作。我该怎么解决?

1 个答案:

答案 0 :(得分:0)

您可能需要这样的东西:

@IBDesignable class MyBtn: UIButton {
    // any outlets here
    // @IBOutlet ...

    override init(frame: CGRect) {
        super.init(frame: frame)
        initNib()
    }

    required init?(coder aDecoder: NSCoder) {
        super.init(coder: aDecoder)
        initNib()
    }

    func initNib() {
        let bundle = Bundle(for: MyBtn.self)
        bundle.loadNibNamed("MyBtnXib", owner: self, options: nil)
        // any customization below
        ...
    }
}

通常,如果您使用IB,最好将IBDesignable用于UI元素,并将IBInspectable用于合理的变量。