我有一个简单的问题要问。
我有一个ViewController,它使用UITableView来显示事物列表。 UITableView委托是这个ViewController(使用dataSource = self等)。
在所有教程中,我知道我需要使用以下方法在接口中定义委托类:
@interface Class : SuperClass <ClassNameDelegate>
但是所有代码都可以正常工作,而无需声明并仅实现方法。例如:
@interface Class: SuperClass
是个bug吗?我还是需要申报呢?
谢谢。
莫罗
答案 0 :(得分:0)
在一般情况下,我们使用performSelector
来调用这样的委托方法:
[(NSObject *)_delegate performSelector:@selector(storeFeedbackViewControllerWasDismissed)];
并且一切正常,因为这个委托有这个方法。
但最好指出该类符合协议,因为XCode可以警告您实现您可能错过的所需委托方法。
答案 1 :(得分:0)
有三个时刻:
conformsToProtocol:@protocol(ClassNameDelegate)
ClassNameDelegate
有必需的方法,如果没有实现请求方法,则不会出现编译第二类错误。id<ClassNameDelegate>