iphone - 判断一个类在运行时是否符合特定的协议(protocol)方法?

标签 iphone ios objective-c protocols

我试图判断是否有一种方法可以确定一个类在运行时是否符合特定(可选)协议(protocol)方法。有没有办法检查这个?不想发送对委托(delegate)类中不存在的委托(delegate)方法实现的调用。

最佳答案

 BOOL isProtocolConformed=[YourClass conformsToProtocol:@protocol(YourProtocol)];
 BOOL isSelectorResponse=[yourObject respondsToSelector:@selector(yourMethod)];
 if(isProtocolConformed && isSelectorResponse){
    //do your stuff
 }

关于iphone - 判断一个类在运行时是否符合特定的协议(protocol)方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15780742/

相关文章:

iphone - 将对象设置为 nil 是否将其标记为垃圾回收

iphone - 如何在 map 首次加载时自动打开 map 上的注释标注?

ios - 私有(private) iOS 应用

ios - XCode 将文件构建到应用程序中

ios - Swift 2.1 - 如何将 collectionView 单元格的索引路径行传递给 segue

ios - OpenUrl 不适用于 iOS10

iphone - 转换后的 Objective-C 类类型不匹配

iphone - 使用 UINavigationController 还是 ContentController?

ios - 从 OpenWeatherMap Api 崩溃应用程序获取 NSURLSESSION 数据

ios - 单击移动 SKSpriteNode,但长按时连续移动 - Sprite Kit