UIControl子类-意外地找到nil,同时隐式展开一个可选值

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了UIControl子类-意外地找到nil,同时隐式展开一个可选值相关的知识,希望对你有一定的参考价值。

我正在尝试将UIControl子类化以创建自定义设计的UIButton:

class CustomButton: UIControl {

    @IBOutlet var containerView: UIView!

    required init?(coder: NSCoder) {
        super.init(coder: coder)
        self.containerView.roundCorners()
    }
}

在.xib文件(例如CatInfoView)中,我添加了一个UIView并为其指定了CustomButton的自定义类名称。但是,当我运行该应用程序时,我得到

Thread 1: Fatal error: Unexpectedly found nil while implicitly unwrapping an Optional value

在CustomButton的self.containerView.roundCorners()行上。我在这里做错了什么?在CustomButton .xib文件中,IBOutlet已正确连接。

答案

您需要

override func layoutSubviews() {
    super.layoutSubviews()
    self.containerView.roundCorners()
}

请勿进入required init?(coder: NSCoder)内部的任何插座尚未创建

以上是关于UIControl子类-意外地找到nil,同时隐式展开一个可选值的主要内容,如果未能解决你的问题,请参考以下文章

Swift:错误:在隐式展开可选值时意外发现 nil

在隐式展开可选值 AVAUDIO Player SWIFT 时意外发现 nil

Swift Xcode 致命错误:在隐式展开可选值时意外发现 nil [重复]

UITableViewCell 中的 AVPlayer 导致“在隐式展开可选值时意外发现 nil”错误

iOS/Xcode:Koloda 框架:在隐式展开 Optional 值时意外发现 nil

想要将 Slidervalue 设置为 UserDefault:线程 1:致命错误:在隐式展开可选值时意外发现 nil [重复]