解决getView方法重复执行的问题

1. 在布局,只有一个Listview
把高设置成fill_parent或固定高度就成了,不要使用wrap_content
 

2. Listview有父控件
把父控件高设置成fill_parent或固定高度就成了,不要使用wrap_content
 

3. 以上设置后getView仍然重复执行
首先要看一下有没有影响到Listview重绘的控件,比如,如果它上面和下面都有控件,而且高都是wrap_content,那么你就要设置成fill_parent或者固定高,这样listview在高上就不会重绘,这是最主要的一点。

那左右是不是也有控件(一般一个手机页面用到list的时候不会有这么多控件)?有,那我们就也要调整,那就同高一样的设置。

一定要让Listview是一个固定在那个地方不动的。
 

4. Listview这种使用Linearlayout中weight这种布局方式,有时同样会导致getView方法重复执行。问题如下:

例子
如果Listview 左侧有Gallery,同时Gallery自动播放
这种布局,因为Gallery每次移动时,都会执行onLayout导致布局变动,进而影响Listview,重复执行getvVew方法

解决方法:
(1). 不让Gallery移动
(2). 参照1、2设置Listview宽和高


转载于:https://my.oschina.net/android520/blog/651646

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值