如何从超类视图控制器的子类正确访问其 IBOutlet 属性?



如何从超类视图控制器的子类正确访问其 IBOutlet 属性?

我有一个 DetailViewController和一个 AddViewController,它们是 DetailViewController 的一个子类。在DetailVC中,我有一堆textViews作为从故事板连接的IBOutlet属性。我想在AddVC中使用这些textViews,但总是发现nil。

// These textViews are connected to storyboard's DetailViewController from DetailViewController
@IBOutlet var textViews: [KMPlaceholderTextView]!

// I'm trying to access those textViews from AddViewController which is a subclass of DetailViewController, but they are nil
class JLAddViewController: JLDetailViewController {
// MARK: - *****数据源*****
// 用来接收主控制器搜索框上的单词
var word:String?
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
// 打开每个textView的输入功能
textViews.forEach {
$0.isUserInteractionEnabled = true;
$0.isEditable = true
}
}
}

情节提要中的视图控制器不是类,而是实例。您为 DetailViewController 实例设计的接口和插座属于该实例,不属于其他实例,当然也不属于子类的实例。

最新更新