UIImageViewの画像を動的に高速に更新できるサンプルがありますか?これらのイメージは、NSThreadのIP接続で受信されます。しかし、imageView.image = newImageRecdを実行しても更新されません。動的にuiimagesを更新する
EDIT:すべてのデータが
は、任意のヘルプ/ポインタを感謝メインスレッドでRECDです。
UIImageViewの画像を動的に高速に更新できるサンプルがありますか?これらのイメージは、NSThreadのIP接続で受信されます。しかし、imageView.image = newImageRecdを実行しても更新されません。動的にuiimagesを更新する
EDIT:すべてのデータが
は、任意のヘルプ/ポインタを感謝メインスレッドでRECDです。
メインのスレッドでUIの更新を行う必要があります。あなたは別のスレッド、使用上の接続を実行している場合:
updateImageView:
は、画像ビューの画像プロパティを設定するために使用される方法である
[self performSelectorOnMainThread:@selector(updateImageView:) withObject:newImageRecd waitUntilDone:FALSE];
:iOSの4のために
-(void)updateImageView:(UIImage *)image
{
[self.imageView setImage:image];
}
以降、あなたが使用することができますGrand Central Dispatch(GCD)を使用して、バックグラウンドスレッドにイメージをロードします。ここでは、完全にこのプロセスを説明するリンクです:
上記のチュートリアルでは、このコードを提供します。
dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0ul);
dispatch_async(queue, ^{
UIImage *image = [UIImage imageWithContentsOfFile:imagePath];
dispatch_sync(dispatch_get_main_queue(), ^{
[[cell imageView] setImage:image];
[cell setNeedsLayout];
});
});
私は、リモートサーバーからイメージをロードするために、この自分自身を使用してきた、それが働いていますすばらしいです。
いいえ動作しません。すべてのデータは、メインスレッドで記録されます。 –
あなたの質問は「NSThreadのIP接続で受け取った」と述べています。だから、それはどういう意味ですか? –
接続はIBActionで確立され、セレクタはメインスレッド上のデータを受け取るために呼び出されます。 –