我希望在一个框架中创建一个超类,该类可以修改IBOutlet属性。然而,我希望子类连接到Storyboard中,因为我不想将控件连接到框架中的类。
例如,我的框架中的超类如下:
public class MySuperDetailViewController: UIViewController {
@IBOutlet public weak var titleLabel: UILabel?
@IBOutlet public weak var dateLabel: UILabel?
@IBOutlet public weak var contentWebView: UIWebView?
...
}
然后在子类中,我想要将控件拖放到子类中。因此我必须通过重写来公开这些属性。我正在尝试这样做,但它不允许我:
那么在子类中,我希望能够通过控制拖动的方式将控件添加到子类中。为了实现这一点,我需要通过重写方法来公开这些属性。我正在尝试这样做,但是系统不允许我进行操作:
class MyDetailViewController: MySuperDetailViewController {
@IBOutlet weak var titleLabel: UILabel?
@IBOutlet weak var dateLabel: UILabel?
@IBOutlet weak var contentWebView: UIWebView?
}
我收到的错误是:无法使用存储属性“titleLabel”、“dateLabel”和“contentWebView”进行覆盖
。
我应该如何解决这个问题或采取更好的方法?