Objective c blocks 在块中使用变量

Objective c blocks 在块中使用变量,objective-c-blocks,Objective C Blocks,我使用一些公共API来显示图像,其中我使用以下代码来全屏显示图像,一旦全屏关闭,我想调用RateImage:方法和imgID __block NSString *imgID = _img.ImageID; [cell.imageView setupImageViewerWithImageURL:[NSURL URLWithString:strImageURL] onOpen:^{ NSLog(@"Open"); } onClose:^{ [MyAppDeleg

我使用一些公共API来显示图像,其中我使用以下代码来全屏显示图像,一旦全屏关闭,我想调用RateImage:方法和imgID

__block NSString *imgID = _img.ImageID;
[cell.imageView setupImageViewerWithImageURL:[NSURL URLWithString:strImageURL] onOpen:^{
    NSLog(@"Open");
} onClose:^{
    [MyAppDelegate RateImage:imgID];
}];
我不知道为什么我的应用程序崩溃了

错误:地址不包含指向对象文件中节的节

我经历过


有人能告诉我们如何用in block传递值吗?

是onClose导致了崩溃吗?i、 e如果删除[MyAppDelegate RateImage:imgID];它运行正常吗?@sbarow是的,如果我删除语句[MyAppDelegate RateImage:imgID];从一开始它就很好。它在我使用imgID时崩溃;在街区外,它还会崩溃吗?只需制作一个假id进行测试。使用
\uu块
没有任何意义。请在此处发布RateImage的代码,不需要使用\uu块的原因是您没有修改imgID对象。