大家在开发的时候,肯定遇到过ListView嵌套GridView问题。二者都是滚动型控件,然而google有个机制,就是2种滚动的控件是不可以嵌套的。ListView是滚动型的,GridView也是。
我曾在上家公司遇到过ListView嵌套GridView,后来是重写GridView才得以解决,由于最近在群里看到很多人在咨询这个问题,我感觉还是写篇文章,让大家参考下。
不过上一家用ListView嵌套GridView,于是,我对GridView进行重写:
然后在布局中引入:
再重新布局会出现小小的问题,如下:
你会发现,图片之间的水平间距和垂直间距不等,之前可能没注意这个问题,就没有解决。
如今再来审查这个问题,是忽略了屏幕大小,可能在这个屏幕显示距离刚刚好,可能在换个尺寸的屏幕,水平和垂直间距就变了。于是自己研究了,写了个demo,如下:
同样还是对GridView进行重写:
接着在布局中引入:
在GridView中的适配器只放一个ImageView控件,由LinerLayout包围
然后GridView适配器:
最终效果图:
欢饮大家来拜读,谢谢!