在块内调用委托方法。委派更改

时间:2014-06-30 13:43:09

标签: objective-c objective-c-blocks

我有这段代码:

__block id <BitlyConnectionDelegate> blockDelegate = [self delegate];
__block BitlyConnection *blockSelf = self;

[NSURLConnection sendAsynchronousRequest:request queue:[NSOperationQueue mainQueue] completionHandler:^(NSURLResponse *response, NSData *data, NSError *error) {

//do some stuff

[blockDelegate someMethod:blockSelf withParameters:parameters]; //calling a delegate method

}];

所以我NSLoged委托的类,在块之前,委托类是正确的,但它会改变,有时块委托是__NSArrayI或__NSMutableRLEArray 这会导致错误:

  

[__ NSArrayI someMethod:withParameters]无法识别的选择器发送到实例

blockDelegate变量正在改变,但我不知道它是如何改变的以及为什么。 任何提示/建议都会很棒。解释为什么它的变化非常受欢迎。

注意:我拥有这两个课程并自己编写。

杰克

0 个答案:

没有答案