从xib加载视图:此类不是键

时间:2018-02-03 12:46:02

标签: ios swift xib

我有一个关于以编程方式从XIB加载视图并使用outlet的问题:

我为XIB的观点创建了课程:

class VoiceRecView: UIView {

    @IBOutlet weak var recButton: UIButton!

    override init(frame: CGRect) {
        super.init(frame: frame)
    }
    required init?(coder aDecoder: NSCoder) {
        super.init(coder: aDecoder)
    }
    @IBAction func recButtonTapped(_ sender: Any) {
        print("rec button tapped")
    }
}

在XIB中,我将文件所有者的类设置为我的视图控制器,并将类视图转换为" VoiceRecView"。
在视图控制器中,我将XIB添加为子视图:

let voiceRecView = UINib(nibName: "VoiceRecView", bundle: nil).instantiate(withOwner: self, options: nil)[0] as! VoiceRecView
self.view.addSubview(voiceRecView)

当我运行应用程序时,我收到错误:

  

因未捕获的异常终止应用' NSUnknownKeyException',   原因:' [< .... ChatViewController 0x7fd0a27077e0>   setValue:forUndefinedKey:]:此类不是键值   符合编码的密钥recButton。'

1 个答案:

答案 0 :(得分:1)

错误是我的错,通过删除并重新连接插座来解决。