是否有任何结构性原因,为什么在类实例上调用方法会使与该方法关联的委托方法不会触发?委托方法似乎只在内部调用关联方法时被调用
A类:
-(void)methodB //public
{
NSURLConnection *url = [[NSURLConnection alloc]init];
url.delegate = self;
[url start];
}
- (void)connection: (NSURLConnection *)connection didReceiveResponse: (NSURLResponse *)response //delegate Method C
{
NSLog (@"Connection worked");
}
内部X类的一些方法:
ClassA *littleA = [[ClassA alloc] init];
[littleA methodB];
问题是connection:didReceiveResponse:
不被调用。
但是,如果我从ClassA
的实例方法内部做[self methodB]
它显然工作。
这是一个有点难以遵循没有至少一些虚拟的代码。你是重新实现方法'M',还是使用超类的实现?你希望从哪里调用D? –
你能澄清'methodB'和'methodC'之间的关系吗? – aqs
我只是冒着这个问题冒险,当我指的是类的实例时,我说的是子类,对不起,我还在学习。 – Eric