У меня есть кнопка, и когда я на нее нажимал, я загружаю другую Activity, onCreate этого. Я вызываю метод, который заполняет счетчик данными из веб-службы.Android: Заполните Spinner с диалоговым окном прогресса
Ну, когда я нажимаю на эту кнопку, экран остается «замороженным», а затем показывает действие. Итак, я подумал, что это может быть хорошо, показывает диалог прогресса для пользователя, и после получения возврата веб-службы завершает диалог прогресса.
Я пробовал использовать Handler, и теперь я пытаюсь использовать AsyncTask, но, получив NullPointerException, потому что моя программа заполняет прядильщик, прежде чем веб-сервис вызывается.
private void fillSpinner(){
//runWebService();
new CallWebServiceAsyncTask().execute(null);
mAdapter = new PlanesAdapter(this, allPlanes);
mList.setAdapter(mAdapter);
}
class CallWebServiceAsyncTask extends AsyncTask<Void, Void, Void> {
private ProgressDialog progressDialog;
@Override
protected void onPreExecute() {
progressDialog = new ProgressDialog(PlanesActivity.this);
progressDialog.setMessage("Loading...");
progressDialog.show();
}
@Override
protected Void doInBackground(Void... v) {
runWebService();
return null;
}
@Override
protected void onPostExecute(Void result) {
progressDialog.dismiss();
}
}
Ничего себе! Ошибка ... Спасибо, Самир! –