RecyclerView嵌套GridView,GridView显示不全

来源:互联网 发布:移动4g网络优化是干嘛 编辑:程序博客网 时间:2024/06/05 08:02
在一次做三级导航的过程中,我将第三级列表(GridView)放入到了一个RecyclerView的条目中,但是无论测试多少次,我的GridView都是只能显示一行,显示不全,屡试屡败,最终这个问题才得以解决:
创建自定义View继承GridView,重写onMeasure()方法,在每次绘制时重新计算我们这个控件的高度,具体代码如下:
@Overridepublic void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {    //makeMeasureSpec根据提供的大小值和模式创建一个测量值(格式)    int expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2,            MeasureSpec.AT_MOST);    super.onMeasure(widthMeasureSpec, expandSpec);}

这样每一次view的高度就会重新由我们提供的大小值和模式创建的测量值决定,就解决了GridView只能显示一行的尴尬局面

原创粉丝点击