尝试使用 xib 文件初始化我的自定义类 UIVIew 但在尝试初始化属性时崩溃:
import Foundation
import UIKit
class ReportView: UIView {
@IBOutlet weak var textView: UITextView!
override init (frame : CGRect) {
super.init(frame : frame)
}
convenience init () {
self.init(frame:CGRectZero)
}
required init(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
addBehavior()
}
func addBehavior (){
textView.layer.borderWidth = 1.0
textView.layer.borderColor = UIColor(red: 170/255, green: 170/255, blue: 170/255, alpha: 0.5).CGColor
textView.layer.opacity = 0.9
textView.layer.cornerRadius = 3
textView.clipsToBounds = true
}
}
在 textview 上崩溃: fatal error :在展开可选值时意外发现 nil
最佳答案
根据您的 xib 的外观,有两个可能的问题:
要么你的 socket 没有连接到 xib。
或者 outlet 在初始化期间不可用,所以你无法访问
textView
,它仍然是nil
。正确的方法是覆盖awakeFromNib
方法并将addBehavior
放在那里。
关于ios - 初始化自定义类 UIVIew,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32320160/