Nic*_*ght 55 iphone delegates protocols objective-c
有谁知道检查是否已实施可选协议方法的最佳方法.
我试过这个:
if ([self.delegate respondsToSelector:@selector(optionalProtocolMethod:)] )
Run Code Online (Sandbox Code Playgroud)
代表是:
id<MyProtocol> delegate;
Run Code Online (Sandbox Code Playgroud)
但是,我收到一个错误,说respondsToSelector:
该协议中找不到该功能!
Wil*_*ris 101
respondsToSelector:
是NSObject
协议的一部分.包括NSObject
在MyProtocol
应该解决您的问题:
@protocol MyProtocol <NSObject>
@optional
-(void)optionalProtocolMethod:(id)anObject;
@end
Run Code Online (Sandbox Code Playgroud)
我正在应用以下食谱:
if(self.delegate && [self.delegate respondsToSelector:@selector(closed)]){
[self.delegate closed];
}
Run Code Online (Sandbox Code Playgroud)
我想调用的方法是“ closed”。
归档时间: |
|
查看次数: |
15540 次 |
最近记录: |