源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

Android ListView与getView调用卡顿问题解决办法

  • 时间:2022-03-25 12:01 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:Android ListView与getView调用卡顿问题解决办法
[b]Android ListView与getView调用卡顿问题解决办法[/b] [b]解决办法1[/b],设置ListView高度为固定值或者match_parent/ifll_parent
@Override 
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { 
Log.d("onMeasure", "onMeasure"); 
isOnMeasure = true; 
super.onMeasure(widthMeasureSpec, heightMeasureSpec); 
} 
 
@Override 
protected void onLayout(boolean changed, int l, int t, int r, int b) { 
Log.d("onLayout", "onLayout"); 
isOnMeasure = false; 
super.onLayout(changed, l, t, r, b); 
} 
究其原因,无非是listview要动态计算有多少个view显示在里面,所以需要多次onMeasure,最后才onLayout,而onMeasure可能需要执行多次 这不就行了,我们在adapt里面的getview中,判断是否在onmeasure里,如果在,那么仅仅mInflater.inflate(R.layout.XXX),然后立刻返回这个convertView 如果不在onmeasure里,那么再去真正的onlayout [b]结合这种方法,成功解决了卡顿问题..[/b] 如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部