Listview异步加载的一个方法
?
1 . cursor 读取速度很快
?
2 。 cursor里内容数量大时,遍历一遍比较慢;
?
需要先遍历一遍来形成自己的数据结构的,会更慢
?
3 为了避免这个生成数据结构或者遍历慢的问题,可以用双线成异步加载来作( 应用场景,用户不会在画面出现的一瞬间,500ms之内,拖动list,否则体验不佳)
?
?
4 方法: 先加载cursor中一部分数据,比如20个。
?
用一个线程处理cursor中剩余的数据,整理好。
?
在最后时刻,用runOnUiThread,再异步线程中,回到UI县城写数据,把整理好的结果写回listview中
?
5 好处: 在画面先画出来之后,后台处理数据(因为需要处理,不能直接在getview里用cursor的函数搞定)异步完成, 会再次加载用户喜闻乐见的画面。