`
gnibrE
  • 浏览: 136486 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

Listview异步加载的一个方法

阅读更多

 

1 . cursor 读取速度很快

 

2 。 cursor里内容数量大时,遍历一遍比较慢;

 

需要先遍历一遍来形成自己的数据结构的,会更慢

 

3 为了避免这个生成数据结构或者遍历慢的问题,可以用双线成异步加载来作( 应用场景,用户不会在画面出现的一瞬间,500ms之内,拖动list,否则体验不佳)

 

 

4 方法: 先加载cursor中一部分数据,比如20个。

 

用一个线程处理cursor中剩余的数据,整理好。

 

在最后时刻,用runOnUiThread,再异步线程中,回到UI县城写数据,把整理好的结果写回listview中

 

5 好处: 在画面先画出来之后,后台处理数据(因为需要处理,不能直接在getview里用cursor的函数搞定)异步完成, 会再次加载用户喜闻乐见的画面。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics