次のコードを検討してください。デリゲートに自己以外の他のクラスのインスタンスが割り当てられていることを除いて、すべてが本によって行われます。しかし、このコードは失敗します。デリゲートは決して呼び出されません。何故ですか?非自己委譲が呼び出されていない
class My: UITextField {
...
init(...) {
delegate = MyDelegate()
}
}
public class MyDelegate: NSObject, UITextFieldDelegate {
public func textFieldDidBeginEditing(_ textField: UITextField) {
print("MyDelegate was called")
}
}
次の行: 'public override func didLoad(){'により、 'error:メソッドはそのスーパークラスのメソッドをオーバーライドしません。 – OOPer