Objective c 委托方法似乎只有在内部调用关联方法时才被调用

Objective c 委托方法似乎只有在内部调用关联方法时才被调用,objective-c,ios,delegates,Objective C,Ios,Delegates,在类实例上调用方法会使与该方法关联的委托方法不被激发,这有什么结构性原因吗 A类: 类X中的某些方法: 问题是没有调用连接:didReceiveResponse: 但是,如果我从[self methodB]类A的实例方法内部执行操作,它显然是有效的。没有调用NSURLConnection委托方法,因为您没有为所述连接设置委托 NSURLConnection *url = [[NSURLConnection alloc]init]; url.delegate = self; [url start]

在类实例上调用方法会使与该方法关联的委托方法不被激发,这有什么结构性原因吗

A类:

类X中的某些方法:

问题是没有调用
连接:didReceiveResponse:


但是,如果我从
[self methodB]
类A的实例方法内部执行
操作,它显然是有效的。

没有调用NSURLConnection委托方法,因为您没有为所述连接设置委托

NSURLConnection *url = [[NSURLConnection alloc]init];
url.delegate = self;
[url start];

如果没有至少一些伪代码,这有点难以理解。您是在实现方法
M
,还是在使用超类的实现?您希望从哪里调用
D
?您能否澄清
methodB
methodC
之间的关系?子类化和创建实例之间有着天壤之别。你能不能把这个问题整理一下,这样它就不会有两个部分,一个是用“子类”来表达你的意思?另外,你还没有解释应该在哪里调用
delegateMethodC
。Eric,真的很难理解你的意思。如何将委托与方法“关联”?当然,请粘贴更多代码,否则我怀疑是否有人能够帮助您。您确定没有调用委托方法吗?因为,我看不出为什么在实例上调用
methodB
self
之间会有任何区别,后者实际上也是一个实例-只是当前实例。这似乎不会影响结果。我也更新了这个问题。在实例化的类中使用self是否也会转换为我调用它的类?我不知道您是否错过了它,但您还应该设置NSURLConnection的url
ClassA *littleA = [[ClassA alloc] init];
[littleA methodB];
NSURLConnection *url = [[NSURLConnection alloc]init];
url.delegate = self;
[url start];