主要就是为了解决ListView之类的嵌套显示问题。
1、自定义GridView的代码如下:
public class ButtonGridView extends GridView {
public ButtonGridView(Context context) {
super(context);
}
public ButtonGridView(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
int expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2,MeasureSpec.AT_MOST);
super.onMeasure(widthMeasureSpec, expandSpec);
}
}
2、自定义ListView的代码如下:
/**
* 自定义List(解决List嵌套显示问题)
*/
public class ListViewNesting extends ListView {
public ListViewNesting(Context context) {
super(context);
}
public ListViewNesting(Context context, AttributeSet attrs) {
super(context, attrs);
}
public ListViewNesting(Context context, AttributeSet attrs,
int defStyle) {
super(context, attrs, defStyle);
}
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
int expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2,
MeasureSpec.AT_MOST);
super.onMeasure(widthMeasureSpec, expandSpec);
}
}
本文提供了自定义GridView和ListView的方法,解决了嵌套ListView时出现的显示问题。通过重写onMeasure方法并设置高度MeasureSpec,确保了子项能够正确地测量其尺寸。
&spm=1001.2101.3001.5002&articleId=81871884&d=1&t=3&u=f99e0a543ab74f8c8cc3996479a637a1)
2278

被折叠的 条评论
为什么被折叠?



