更改imageview时出现线程异常

时间:2013-03-07 12:38:18

标签: android multithreading android-layout android-imageview

每当我尝试使用线程暂停一个活动一段时间并且我使用一个函数来更改线程内的图像视图资源时它给了我一个例外,说明只有原始线程可以改变它。现在我知道这是因为视图是在原始活动中声明的而不是在我的线程中。还有其他方法可以暂停活动并在活动暂停时执行此操作,并且有任何方法可以在声明的线程中更改这些参数。两者的解决方案将受到高度赞赏

1 个答案:

答案 0 :(得分:0)

您可以使用AsyncTask执行后台任务,并更新UI视图。如果AsyncTask过于局限,我建议您在threads and Android上阅读Google自己的文档。它们提供了更新UI线程的最佳实践示例。

根据您的解释,一个可能的解决方案可能是您的后台线程在更改imageView时向主线程发送消息(Runnable)。当UI线程收到此消息时,它可能会在内容更改时使某些UI元素无效。