AsyncTask从doInBackground保存变量

时间:2011-08-02 17:07:19

标签: android android-asynctask

我的AsyncTasks中有两个Activity作为内部类。一个人在ArrayList中返回doInBackground,并在ListAdapter上向其postExecute投降。另一个AsyncTask返回StringArray并设置一些TextViews

在旋转时,一切都消失了,旋转时布局也会改变。

我想要访问doInBackground - 方法的结果。如果我有权访问,我只需将变量保存在onSaveInstanceState中并手动重新设置值。

2 个答案:

答案 0 :(得分:3)

您可以在doInBackground中访问onPostExecute的结果。

只需将您的班级更改为:

public class YourTask extends AsyncTask<Void, Void, ObjectYouWantToReturn> {

    @Override
    protected ObjectYouWantToReturn doInBackground(Beneficiary... params) {        
        ObjectYouWantToReturn obj = new ObjectYouWantToReturn();
        //... do your stuff
        return obj;
    }

    @Override
    protected void onPostExecute(ObjectYouWantToReturn result) {
        //there you go, here you have the results from doInBackground
    }
}

答案 1 :(得分:0)