0

この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");

}

そして、同じコントローラー内の別の場所:

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

なぜこのエラーが発生し続けるのか誰か教えてもらえますか?私はここSOでこのエラーに与えられた他の解決策を試しましたが、何も役に立ちませんでした(ほとんどの場合、コードのタイプミスでしたが、コードにエラーがないかチェックしました)。

4

3 に答える 3

2

おそらくあなたはあなたの目標が間違っています。次のようにする必要があります。

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

非同期ローダーは、ターゲットでこれらのセレクターを実行します。したがって、それらに対応する必要があるのはターゲットです。次に、成功と失敗の方法で、画像ビューに画像を設定します。

于 2012-11-08T11:50:43.857 に答える
1

問題はターゲットの場所にあると思いますこれを変更してみてください

[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.thumbself

于 2012-11-08T11:50:45.713 に答える
0

ここに問題があります:

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

セレクターを追加するのを忘れました。あなたは次のように書く必要があります:

[target performSelectorOnMainThread:@selector(thumbImageLoadSucces:) withObject:image waitUntilDone:NO];
于 2012-11-08T11:50:54.233 に答える