У меня есть действие, в котором я показываю изображение, которое хранится на веб-сайте.
Я использую следующий код, чтобы получить его из URL и отобразить активность:
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
Log.i(TAG, "onCreate");
setContentView(R.layout.ad_screen);
AsyncTask<String, Void, Integer> task = new AsyncTask<String, Void, Integer>()
{
/** The system calls this to perform work in a worker thread and
* delivers it the parameters given to AsyncTask.execute() */
@Override
protected Integer doInBackground(String... urls)
{
fetchAd();
return 0;
}
/** The system calls this to perform work in the UI thread and delivers
* the result from doInBackground() */
@Override
protected void onPostExecute(Integer result)
{
displayAd();
}
};
task.execute("");
}
Это работает очень хорошо, но поведение не такое, как я хочу: в этом случае действие выводится на экран (с анимацией справа налево), а затем начинается AsyncTask. Таким образом, изображение отображается на экране после задержки (что является нормальным).
Но я бы хотел выполнить запрос до того, как действие будет перенесено, чтобы экран отображался непосредственно с изображением без каких-либо задержек.
Есть ли способ иметь такое поведение?
Заранее спасибо.