【发布时间】:2012-08-02 07:23:24
【问题描述】:
我有这行代码:
1) m_ProgressDialog = ProgressDialog.show(m_Context, "", m_Context.getString(R.string.dictionary_loading));
2) //important code stuff: interact with db, change some textview values (= 2-3 seconds if i'm unlucky)
3) m_ProgressDialog.dismiss();
但是发生的情况是阶段 2) 发生在 1) 之前……这是错误的。第一个 UI 冻结然后出现对话框..
阶段 2) 是一些与 DB 交互的代码,可能还会更改一些 textViews..但由于这可能需要一段时间,我决定显示进度对话框,以便用户知道正在发生真正重要的事情。我不能将异步用于这些操作,因为 UI 代码和 db 代码被混淆了,它只会让我的生活复杂化
如何强制对话框根据请求显示??.. 对我来说,显示的代码只是将它添加到“当我有一些空闲时间而我现在没有时间”堆栈时将其添加到“待办事项列表”堆栈中..
【问题讨论】:
标签: android android-asynctask progressdialog