我实施了一个ListView
,其中包含#34;加载更多" Button
,当从本地数据库中挑选数据时,它可以正常工作。
在Activity
的开头,使用AsyncTask
获取前20个元素。在那之后"加载更多"按下Button
,必须使用服务器调用再次获取数据。但是,只要使用AsyncTask
启动服务器调用,就会显示AsyncTask
已经被执行过一次并且无法执行两次的错误。
我检查了文档,并说AsyncTask
只执行一次。那么我有什么选择可以在我的ListView
附加多个服务器调用?
答案 0 :(得分:1)
创建AsyncTask
private void loadSomeData() {
MyTask task = new MyTask();
task.execute();
}
privat void loadMore() {
MyTask task = new MyTask();
task.execute();
}
显然,有不同的方法可以做到这一点但是要给你这个想法。
您可以做的是创建任务的实例并重复使用它......
public class MyClass extends Activity {
MyTask task = new MyTask();
public void onCreate(Bundle bundle) {
...
task.execute()
}
private void loadMore() {
task.execute();
}
}