当前位置:  开发笔记 > 编程语言 > 正文

检查是否已实现可选的协议方法

如何解决《检查是否已实现可选的协议方法》经验,为你挑选了2个好方法。

有谁知道检查是否已实施可选协议方法的最佳方法.

我试过这个:

if ([self.delegate respondsToSelector:@selector(optionalProtocolMethod:)] )

代表是:

id delegate;

但是,我收到一个错误,说respondsToSelector:该协议中找不到该功能!



1> Will Harris..:

respondsToSelector:NSObject协议的一部分.包括NSObjectMyProtocol应该解决您的问题:

@protocol MyProtocol 

@optional
-(void)optionalProtocolMethod:(id)anObject;

@end


除了你不应该留下你的代表,你为什么要打[代表发布]?

2> Javier Calat..:

我正在应用以下食谱:

if(self.delegate && [self.delegate respondsToSelector:@selector(closed)]){
    [self.delegate closed];
}

我想调用的方法是“ closed”。

推荐阅读
手机用户2502852037
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有