私下符合协议

时间:2010-09-28 13:40:39

标签: objective-c cocoa-touch

有没有办法隐藏最终用户的协议?我会试着详细描述我想要的东西。我有课程,我们称之为 EndUserClass ,它符合某些协议,例如 HiddenClassDelegate ,我希望隐藏这个协议给最终用户。代码如下所示:

@interface EndUserClass : NSObject  <HiddenClassDelegate>
{
  // .....
}   

@end

我希望使用以下声明保持相同的功能:

@interface EndUserClass : NSObject  
{
  // .....
}   

@end

有没有办法私下遵守协议?我知道我可以在类声明中跳过委托,但它会给出编译器警告,我不想拥有

1 个答案:

答案 0 :(得分:32)

您可以通过在实现文件中声明自定义类类别来实现:

// .m file
@interface EndUserClass() <HiddenClassDelegate>

@end