如何在单独的线程中预加载图像但在UIImageView中使用它们?

时间:2009-10-14 08:28:45

标签: iphone multithreading

AFAIK,一个线程无法访问UI组件。但是我想在后台线程中预加载图像,然后在UIImageView中显示它们。我是否必须使用特殊方法在主线程中访问UIImageView?

1 个答案:

答案 0 :(得分:1)

如果我理解你的问题,你就是正确的一半。线程可以访问UI组件,但只有主线程可以可靠地执行。您的后台线程可以使用performSelectorOnMainThread:withObject:waitUntilDone:来调用主线程中的选择器,并从这些选择器中与UI进行交互。

示例:

[self performSelectorOnMainThread:@selector(updateImage) withObject:nil waitUntilDone:YES];