可以取消任务

时间:2013-03-07 03:38:10

标签: android commonsware-cwac

给你一些背景知识:

我让用户输入搜索操作视图。在文本框的每个更改事件之后,我想使用通用API访问Web,并使用Endless Adapter在listview中显示返回的数据。

目前,我使用cacheInBackground()检索数据,然后使用appendCachedData()将其添加到列表视图。

但是如果用户正在快速键入,我想取消当前正在运行的任务,以便可以启动新任务。目前,旧任务正在运行,appendCachedData()将旧结果放入listview,因为API调用可能需要一两秒钟才能返回数据,但用户键入的速度非常快。

以正确方式执行此操作的建议操作是什么?

1 个答案:

答案 0 :(得分:0)

  

以正确方式执行此操作的建议操作是什么?

恕我直言,“推荐行动”是不这样做:

  

在文本框的每个更改事件之后,我想使用通用API访问Web并使用Endless Adapter在列表视图中显示返回的数据

或者:

  • 在设备上保存所有数据,以便您可以过滤无限的“EndlessAdapter”或
  • 仅对用户采取积极行动执行网络I / O和EndlessAdapter内容(例如,点击搜索图标)