解决listview嵌套gridview,gridview显示不

2017-08-24  本文已影响138人  旧歌i

1.之前做的一个demo中需要listview多条目适配,并且出现了listview嵌套gridview,然后就出现了一个小bug,gridview中的数据显示不全,只能显示一行数据。后来自己查了查资料,发现了问题的原因,原来是嵌套的

过程中,gridview的高度变得不可控了,所以这里我们需要,继承gridview并且重写一个方法,给gridview重新设置高度。这样就解决了这个小bug。下面是重写的代码。

public classMyGridViewextendsGridView {

publicMyGridView(Context context) {

super(context);

//TODO Auto-generated constructor stub

}

publicMyGridView(Context context, AttributeSet attrs) {

super(context, attrs);

//TODO Auto-generated constructor stub

}

publicMyGridView(Context context, AttributeSet attrs,intdefStyle) {

super(context, attrs, defStyle);

//TODO Auto-generated constructor stub

}

@Override

protected voidonMeasure(intwidthMeasureSpec,intheightMeasureSpec) {

//TODO Auto-generated method stub

intexpandSpec= MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE>>2, MeasureSpec.AT_MOST);

super.onMeasure(widthMeasureSpec,expandSpec);

}

}

然后在布局文件中,使用我们重新自定义的gridview就可以了,非常简单!

上一篇下一篇

猜你喜欢

热点阅读