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

标签 swift uiviewcontroller uibutton xib

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

我尝试编写用于将两个 Storyboard文件连接在一起的代码,但它似乎不起作用。

这是我用来连接到 Storyboard 文件的代码示例,但我对 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 文件,但它不起作用,因为我不知道需要编写的代码行。我该如何解决这个问题?

最佳答案

您可能需要这样的东西:

@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,最好对 UI 元素使用 IBDesignable,对合理的变量使用 IBInspectable

关于swift - 如何将 ViewController.swift 中的按钮链接到 xib 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54664545/

相关文章:

ios - 无法将类型 '(UIImage?, PHAsset?)' 的值分配给类型 UIImage? swift 2.2

objective-c - UIPageViewController 中带有 TextView 的 ViewController

swift - Swift 中具有多个可访问标签和图像的按钮

ios - 使用 UITapGestureRecognizer 更改标签颜色

ios - 在 SWTableViewCell 中,UtilityButtons 不响应 setTag 属性

swift - Xcode 9.0 中的线程问题

ios - iboutlet 和 ibaction 连接错误

json - 如何获取json字段?

iphone - 如何知道 UIView 何时完全隐藏?

ios - 当我实现 Parse 时,我得到 "fatal error: unexpectedly found nil while unwrapping an Optional value"