0

我的应用程序只是简单地请求json数据url并将其显示在TableLayout. 我曾经asynctask请求json数据,然后我使用该json数据来填充我的TableLayout. 它工作正常但是当我按下back按钮然后我再次进入应用程序时,它再次json通过运行请求数据AsyncTask。我只是想再次停止调用AsyncTask。所以它TableLayout被相同的数据填充了两次。那么我该如何解决这个问题呢?

4

2 回答 2

2

进行全局布尔旋转并使用它:

@Override
protected void onSaveInstanceState(Bundle outState) {
    // Here save the data you have
    outState.putInt("integer1", value);...

    super.onSaveInstanceState(outState);
}

  @Override
protected void onRestoreInstanceState(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    value = savedInstanceState.getInt("integer1");...
           //fill your layout here
    super.onRestoreInstanceState(savedInstanceState);
    rotation = true;
}

   @Override
public void onResume() {
    super.onResume();
 if(!rotation){
 //start AsyncTask here
 }

}
于 2012-09-11T11:42:44.127 回答
0

可能的情况: 1.如果您想加载一次数据,最好在 onResume 中调用异步任务以将其放在 onCreate 上。2.取消onStop或者onPause里面的异步任务或者在onResume里面正确处理。

于 2012-09-11T11:46:52.807 回答