2016-02-19 15:31:37 444浏览
作为Android开发者,我们都知道保持uI响应灵敏的重要性.因此开发者把类似I/0操作这样的耗时任务放在后台线程中执行:当后台线程执行完毕后,经常需要更新UI:Android可能与读者熟知的其他uI系统非常相似,并不是线程安全的:在修改任何ImageView之前,必须返回到应用程序主线程中,试图在主线程之外修改uI会导致异常。
因此,用于处理图片的Runnable的每一步都需要检查是否应该停止处理图片二如果宿主Activity使用ImageWorker的setExit.TasksEarly()方法设置一个标记(flag),就可以检查到停止状态.该方法需要在onPause()方法中调用。此外,如果FutureTask的cancel()方法被调用,也可以检查到停止状态。