我有这个小问题。
我使用AsyncTask从网络将数据提取到ListView中。如果我按下一个项目,它会带我去另一个活动。然后,如果我按下'后退'按钮,AsyncTask不再执行。 (这正是我想要的)。
问题是,如果在ListView上我按下后退按钮,然后我再次进入listView活动,AsyncTask再次执行。
我不确定是否会发生这种情况,因为Listview的活动会破坏并丢失所有引用,或者因为onResume(我认为)正在召回onCreate。
答案 0 :(得分:0)
当您按下时,您将返回相同的旧活动实例。
如果你想再次运行asynctask,你需要在onResume中调用它的执行。
从你所说的,似乎你在活动oncreate中调用asynctask执行。当您从listview活动返回并返回时,您将再次创建活动,这就是执行asynctask的原因。 onResume总是在onCreate之后调用。 当您的活动成为焦点时,总会调用onResume。