在Xcode中,我如何知道哪个类实现了协议?

时间:2013-08-08 06:03:23

标签: objective-c xcode

我想知道在Xcode中,我能否快速了解哪些类实现了某些协议?

我不想使用搜索,但想快速识别这些类。

2 个答案:

答案 0 :(得分:6)

您可以使用助理编辑器:

  • 打开您感兴趣的协议,将光标放在@protocol定义
  • 打开助理Edior(命令 - 选项 - return ),然后从左上角的下拉菜单中选择{{1 }}:

enter image description here

实现协议的类将在列表中。

编辑添加Rob的评论信息:

请注意,这只会查找在其公共标头或其实现中声明它们符合协议的类。如果在其他地方声明了对协议的一致性,则不会显示这些类。

假设您在某处定义了协议

Protocols

具有此类公共标题@protocol MyProtocol <NSObject> … @end 的类将显示:

MyClass.h

此外,在.m文件中扩展的类将显示

@interface MyClass : NSObject <MyProtocol>

这样的类扩展@interface MyObject () <SomeProtocol> … @end @implementation MyObject … @end 不会显示:

MyClass_Extension.h

答案 1 :(得分:3)

特别是在协议实施时按下的类  '命令btn +右键单击鼠标'在协议方法..

它将显示具有此方法实现的所有类的列表。 你只需点击它就可以跳上那门......