任何可以动态更新UIImageView图像的例子?这些图像在NSThread中的IP连接上接收。但他们不更新时,我imageView.image = newImageRecd;动态更新uiimages
编辑:所有的数据是RECD在主线程
感谢所有帮助/指针。
任何可以动态更新UIImageView图像的例子?这些图像在NSThread中的IP连接上接收。但他们不更新时,我imageView.image = newImageRecd;动态更新uiimages
编辑:所有的数据是RECD在主线程
感谢所有帮助/指针。
UI更新需要在主线程上执行。如果你正在运行在不同的线程上的连接,可以使用:
[self performSelectorOnMainThread:@selector(updateImageView:) withObject:newImageRecd waitUntilDone:FALSE];
其中updateImageView:
是用来设置图像视图的图像属性的方法:
-(void)updateImageView:(UIImage *)image
{
[self.imageView setImage:image];
}
对于iOS 4及更高版本,可以使用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];
});
});
我一直在使用这个自己从远程服务器加载图像,它的工作大。
不行不行。所有数据都在主线程上记录。 – 2010-11-22 17:20:50