繁体   English   中英

iPhone目标C:无法识别的选择器发送到实例AsyncImageLoader

[英]iPhone objective c: unrecognized selector sent to instance AsyncImageLoader

我正在使用此AsyncImageLoader异步加载图像: AsyncImageView

当我尝试使用方法loadImageWithURL加载图像资源时,我不断收到错误消息: unrecognized selector sent to instance

类(AsyncImageLoader)试图执行选择器,如下所示:

[target performSelectorOnMainThread:success withObject:image waitUntilDone:NO];

我的代码是这样的:

-(void)thumbImageLoadSucces:(id)sender {

    NSLog(@"imageloadedsucces");

}

-(void)thumbImageLoadError:(id)sender {

    NSLog(@"imageloadederror");

}

然后在同一Controller的其他位置:

[self.asyncImageLoader loadImageWithURL:url target:self.thumb success:@selector(thumbImageLoadSucces:) failure:@selector(thumbImageLoadError:)];

谁能告诉我为什么我不断收到此错误? 我在SO上尝试了针对此错误的其他解决方案,但没有任何帮助(这主要是代码中的错字,但我检查了代码是否有错误)。

大概您的目标错误。 它必须是:

[self.asyncImageLoader loadImageWithURL:url target:self success:@selector(thumbImageLoadSucces:) failure:@selector(thumbImageLoadError:)];

异步加载器将在目标上执行那些选择器。 因此,这是需要回应他们的目标。 然后,在成功与失败方法中,将图像设置在图像视图上。

我认为您的问题出在您的目标位置尝试更改此位置

[self.asyncImageLoader loadImageWithURL:url target:self.thumb success:@selector(thumbImageLoadSucces:) failure:@selector(thumbImageLoadError:)];

进入

[self.asyncImageLoader loadImageWithURL:url target:self success:@selector(thumbImageLoadSucces:) failure:@selector(thumbImageLoadError:)];

self.thumb变成self

这是问题:

[target performSelectorOnMainThread:success withObject:image waitUntilDone:NO];

您忘记添加选择器。 您需要这样写:

[target performSelectorOnMainThread:@selector(thumbImageLoadSucces:) withObject:image waitUntilDone:NO];

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM