Мое основное приложение делает это: оно получает данные из интернета и имеет 3 кнопки, когда при нажатии я иду на 3 других экрана. поскольку загрузка данных может быть немного медленной, я хочу использовать асинхронную задачу. Это мой пример кода для asynctask.
class LoginProgressTask extends AsyncTask {
@Override
protected Boolean doInBackground(String... params) {
try {
Thread.sleep(4000); // Do your real work here
} catch (InterruptedException e) {
e.printStackTrace();
}
return Boolean.TRUE; // Return your real result here
}
@Override
protected void onPreExecute() {
showDialog(AUTHORIZING_DIALOG);
}
@Override
protected void onPostExecute(Boolean result) {
// result is the value returned from doInBackground
removeDialog(AUTHORIZING_DIALOG);
}
}
и это мой образец моей основной деятельности:
public class MainScreen extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
MainTheme();
}
public void MainTheme(){
retrieve_data(); //function for getting the data
... action with the buttons, onClicks Listener
}
}
У меня вопрос, как я могу смешать эти коды в одном упражнении, чтобы он работал, потому что я не понял AsyncTask. Или что я должен вернуть в doInBackground?