使用startActivity()移动到新类后,AsyncTask.get()没有等待

时间:2012-06-07 03:56:51

标签: android android-asynctask

我有一个名为trailsActivity的类,它扩展了Activity。我创建了一个名为mapPreLoad的AsyncTask的新实例,我在trailsActivity中执行它。

然后我使用startActivity()移动到我的新类trailInformation,它也扩展了Activity。从trailInformation按下按钮以移动到扩展MapActivity的新类mapPopup。在mapPopup中,我通过调用“trailsActivity.mapPreLoad.get();”结束onCreate,但.get()调用不等待任务完成,结果我收到错误。

有什么方法可以让我的工作,或者我应该考虑完全重新设计我的过程?如果您需要更多详细信息,请询问。感谢

1 个答案:

答案 0 :(得分:0)

<强> TrailsActivity.java

从AsyncTask开始。

On Asyntask onPostExecute方法

Intent intent=new Intent(this,TrailInformation.java);
intent.putExtra("result","Whatever result you got");
startActivity(intent);

<强> TrailInformation.java

onButton单击“执行以下操作”。

    Intent intent=new Intent(TrailInformation.this,mapPopup.class);
    intent.putStringExtra("result",getIntent().getStringExtra("result"));
    startActivity(intent);