ScrollView和ListView是都自带滚动条的,所以一起使用时便会出现一些问题,例如ListView显示不完全。
解决方法如下
我们要做的就是自定义一个ListView控件并插入到中间的LinearLayout中
这个自定义控件只是重写了ListView的onMeasure方法,使其不会出现滚动条
ScrollView嵌套GridView也是同样的道理
解决方法如下
<ScrollView>
……
<LinearLayout>
</LinearLayout>
……
</ScrollView>
我们要做的就是自定义一个ListView控件并插入到中间的LinearLayout中
public class MyListView extends ListView{
public MyListView(Context context, AttributeSet attrs) {
super(context, attrs);
}
public MyListView(Context context) {
super(context);
}
public MyListView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
@Override
public void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
int expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2,
MeasureSpec.AT_MOST);
super.onMeasure(widthMeasureSpec, expandSpec);
}
}
这个自定义控件只是重写了ListView的onMeasure方法,使其不会出现滚动条
ScrollView嵌套GridView也是同样的道理