您的位置:首页 > 其它

彻底解决listview,gridview的getview多次调用问题

2017-03-20 16:52 471 查看
转自:http://blog.csdn.net/ksr12333/article/details/18407527#reply

问题:scrollview嵌套listview,但是页面切换卡顿。虽然最后没用这种方法(由于这种方法会导致listview改变了,adapter却没有及时更新的异常,最后我直接获取list的size,设置高度),但不失为一个好方法。

listview,gridview,有时候getview会调用多次,特别是把listview放在viewpager中,很容易卡顿

网上的方法往往只是说,把listview的height固定住或者fill_parent,其实这样简单的listview是有效的,但是item如果是复杂的xml,很难实现,或者说无法实现。

究其原因,无非是listview要动态计算有多少个view显示在里面,所以需要多次onMeasure,最后才onLayout,而onMeasure可能需要执行多次

这不就行了,我们在adapt里面的getview中,判断是否在onmeasure里,如果在,那么仅仅mInflater.inflate(R.layout.XXX),然后立刻返回这个convertView

如果不在onmeasure里,那么再去真正的onlayout

结合这种方法,成功解决了卡顿问题..
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  嵌套listview卡顿