【问题标题】:How to link a button in ViewController.swift to an xib file?如何将 ViewController.swift 中的按钮链接到 xib 文件?
【发布时间】:2019-07-06 22:53:07
【问题描述】:

我想在我的视图控制器中创建一个链接到 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 文件,但它不起作用,因为我不知道我需要编写的代码行。我该如何解决这个问题?

【问题讨论】:

    标签: swift uiviewcontroller uibutton xib


    【解决方案1】:

    你可能需要这样的东西:

    @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 用于合理变量。

    【讨论】:

      猜你喜欢
      • 2016-03-09
      • 2018-02-18
      • 1970-01-01
      • 1970-01-01
      • 2011-08-29
      • 2014-08-02
      • 2021-10-13
      • 2014-12-06
      • 1970-01-01
      相关资源
      最近更新 更多