Android GridView或ListView 只显示部分元素

本文探讨了一个关于GridView绑定数据时只显示部分数据的问题,并分析了原因在于GridView内部包含ScrollView导致getView方法的position参数始终为0。通过调整布局为Gallery或水平列表解决了问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

遇到一个奇怪的现象,GridView中绑定了数据,但是只显示了部分数据,而且只显示一行。查看绑定的adapter的getView方法,其传递进来的position一直为0.

但是adapter中数据源没有问题,大小是对的。这是为什么呢?

 

经查资料,发现原来是GridView的根元素中存在ScrollView,导致getView的postion参数一直为0,具体原因暂时还不清楚。

不过ScrollView垂直滚动的情况如果还有其他垂直方向需要滚动的控件,使用起来也不方便。

后面改成Gallery或水平滚动的列表,getView的postion参数就正确了,控件显示也正常了。

 

类似像上面的问题一直困扰着我,决定还是花时间多研究一下android UI方面的机制,只有掌握了原理才可以更加轻松地应对这些问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值