0

我有这个小问题。

我使用 AsyncTask 从网络获取数据到 ListView。如果我按下一个项目,它会将我带到另一个活动。然后,如果我按下“后退”按钮,AsyncTask 不会再次执行。(这正是我想要的)。

问题是,如果在 ListView 上按下后退按钮,然后再次进入 listView 活动,AsyncTask 将再次执行。

我不确定这是因为 Listview 的活动破坏并丢失了所有引用,还是因为 onResume(我认为)正在调用 onCreate。

4

1 回答 1

0

当您按下返回时,您将返回到该活动的同一个旧实例。

如果您希望异步任务再次运行,您需要在 onResume 中调用它的执行。

从您所说的来看,您似乎在活动 oncreate 中调用了 asynctask 执行。当您从 listview 活动返回并返回时,您将再次创建活动,这就是执行 asynctask 的原因。onResume 总是在 onCreate 之后调用。当您的活动成为焦点时,总是会调用 onResume。

于 2013-06-17T08:27:28.550 回答