1 EYLÜL 2010, ÇARŞAMBA
Can't Looper aramadı işleyicisi içinde iş parçacığı oluşturma.() hazırlamak için ProgressDialog içinde AsyncTask
Bu hatayı alıyorum neden anlamıyorum. AsyncTask arka planda bazı işlemler çalıştırmak için kullanıyorum.
Var:
protected void onPreExecute()
{
connectionProgressDialog = new ProgressDialog(SetPreference.this);
connectionProgressDialog.setCancelable(true);
connectionProgressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
connectionProgressDialog.setMessage("Connecting to site...");
connectionProgressDialog.show();
downloadSpinnerProgressDialog = new ProgressDialog(SetPreference.this);
downloadSpinnerProgressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
downloadSpinnerProgressDialog.setMessage("Downloading wallpaper...");
}
Ben bir koşula bağlı: doInBackground()
içine aldığımda
[...]
connectionProgressDialog.dismiss();
downloadSpinnerProgressDialog.show();
[...]
downloadSpinnerProgressDialog.show()
çalıştığım zaman hata alıyorum.
Herhangi bir fikir adamlar?
CEVAP
1 EYLÜL 2010, ÇARŞAMBA
show()
User-Interface (UI) thread, doInBackground()
süre gelen çağrılmalıdır yöntemi AsyncTask
tasarlanmış ana nedeni olan farklı bir iş parçacığı üzerinde çalışır.
Ya onPostExecute()
11 *veya show()
aramalısın.
Örneğin:
class ExampleTask extends AsyncTask<String, String, String> {
// Your onPreExecute method.
@Override
protected String doInBackground(String... params) {
// Your code.
if (condition_is_true) {
this.publishProgress("Show the dialog");
}
return "Result";
}
@Override
protected void onProgressUpdate(String... values) {
super.onProgressUpdate(values);
connectionProgressDialog.dismiss();
downloadSpinnerProgressDialog.show();
}
}
Bunu Paylaş:
Can't Looper aramadı işleyicisi i...
Nasıl başlatılıyor işlemek için ve Bac...
Bir değer içinde bir yeni satır nasıl ...
sign_in eylem için farklı bir düzen ha...
Can't Looper aramadı hangi konu i...