从android中的Async Task中删除自定义对话框

时间:2014-10-23 13:43:17

标签: android android-asynctask dialog dismiss

我有一个自定义对话框,当按下按钮时,它会执行异步任务。我想要的是关闭asynctexecute异步任务的对话框。我怎么能这样做?

提前致谢

2 个答案:

答案 0 :(得分:2)

如果您使用Async作为内部类,则使用dialog.dismiss()直接忽略它,其中dialog被声明为类实例变量。如果没有,请通过async constructor传递,然后dismiss传递给onPostExecute。 通常我要做的是:在onPreExecute上创建对话框,然后在dismiss上创建onPostExecute对话框,但这也取决于您的需要,在哪里宣布它。

答案 1 :(得分:0)

如果你想在AsynTask完成之前解除对话,你可以在你需要的时候在AsynTask的dialog.dismiss()方法中调用onProgressUpdate()。这个函数在UI线程中调用,所以你不会遇到问题。

有关onProgressUpdate()功能的其他信息,请访问:http://developer.android.com/reference/android/os/AsyncTask.html