简体   繁体   中英

Calling protocol methods on super

Can I call a protocol method from a child on its super class, even though the super class supports the protocol privately?

Let's say I have a Class A which privately conforms to UIGestureRecognizerDelegate protocol. Class B inherits from Class A but when I tried to call [super gestureRecognizerShouldBegin:gestureRecognizer]; I get an error.

Any idea?

The UIScrollViewDelegate doesn't declare a method named gestureRecognizerShouldBegin:gestureRecognizer: .

But generally speaking, yes, its possible to call methods declared in protocols that the super class implements, but keep in mind that methods marked with @optional in the protocol aren't guaranteed to be implemented (you can check this via the respondsToSelector: method)

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM