在AsyncTask的ProgressDialog中,无法在未调用Looper.prepare()的线程中创建处理程序。
在AsyncTask的ProgressDialog中,无法在未调用Looper.prepare()的线程中创建处理程序。
我不明白为什么会出现这个错误。我正在使用AsyncTask在后台运行一些进程。
我有:
protected void onPreExecute() { connectionProgressDialog = new ProgressDialog(SetPreference.this); connectionProgressDialog.setCancelable(true); connectionProgressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER); connectionProgressDialog.setMessage("连接到网站中..."); connectionProgressDialog.show(); downloadSpinnerProgressDialog = new ProgressDialog(SetPreference.this); downloadSpinnerProgressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER); downloadSpinnerProgressDialog.setMessage("下载壁纸中..."); }
当我进入doInBackground()
根据条件,我会:
[...] connectionProgressDialog.dismiss(); downloadSpinnerProgressDialog.show(); [...]
每当我尝试downloadSpinnerProgressDialog.show()
时,我会收到错误。
有什么想法吗?