AsyncTask从我的doInBackground返回一个Bundle

时间:2012-04-08 11:31:52

标签: android

我有一个AsyncTask类,它将在我的doInBackground方法中返回一个Bundle。这个包包含一个String和一个Integer,我这样做:

protected Bundle doInBackground(Void... b) {

    Bundle info = new Bundle(); 

    info.putString("km", distanceInKm);
    info.putInt("time", totalTime); 

    return info;
 }

所以在我的onPostExecute中,我必须得到这两个变量才能启动需要这些变量的新活动。

所以这里是我的代码:

protected void onPostExecute(Bundle extraInfo) {

    String km; 
    int time;

    km = extraInfo.getString("km");
    time = extraInfo.getInt("time"); 
}

当我调试代码并在我从doInBackground方法返回时放置断点时,Bundle info确实包含正确的信息,如下所示:

Bundle[{time=20, km=15.6 }]

但是当我尝试在onPostExecute方法中检索信息时,该值仅为:"time" or "km"

如何设法完成此任务?提前谢谢..

0 个答案:

没有答案