ScrollView嵌套GridView、ListView的解决办法
2012-12-25 15:23
423 查看
资源描述:
问题:在Android开发当中经常会用到了需要ScrollView嵌套GridView或者是ListView的情况,由于这两款控件都自带滚动条,当他们碰到一起的时候便会出问题,即GridView或ListView会显示不全。
解决方案:
自定义GridView或ListView,去掉其滚动条。一下为GridView的例子。
复写GridView:
[java] package com.yang.widget;
import android.content.Context;
import android.util.AttributeSet;
import android.widget.GridView;
public class MyGridView extends GridView {
public MyGridView(Context context, AttributeSet attrs) {
super(context, attrs);
}
public MyGridView(Context context) {
super(context);
}
public MyGridView(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);
}
}
package com.yang.widget;
import android.content.Context;
import android.util.AttributeSet;
import android.widget.GridView;
public class MyGridView extends GridView {
public MyGridView(Context context, AttributeSet attrs) {
super(context, attrs);
}
public MyGridView(Context context) {
super(context);
}
public MyGridView(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);
}
}
在布局文件当中使用自定义的GridView:
[html] <com.yang.widget.MyGridView
android:id="@id/bolg_category_gridview"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:horizontalSpacing="5dp"
android:numColumns="4"
android:stretchMode="columnWidth"
android:verticalSpacing="6dp" />
<com.yang.widget.MyGridView
android:id="@id/bolg_category_gridview"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:horizontalSpacing="5dp"
android:numColumns="4"
android:stretchMode="columnWidth"
android:verticalSpacing="6dp" />
相关文章推荐
- ScrollView中嵌套GridView,ListView只显示一行的解决办法
- ScrollView嵌套GridView,ListView自动滚动到第一条Item的解决办法
- android ScrollView中嵌套GridView,ListView只显示一行的解决办法
- Android ScrollView 下嵌套 ListView 或 GridView出现问题解决办法
- ScrollView中嵌套GridView,ListView只显示一行的解决办法
- android ScrollView中嵌套GridView,ListView只显示一行的解决办法
- android ScrollView中嵌套GridView,ListView只显示一行的解决办法
- ScrollView嵌套GridView、ListView的解决办法
- ScrollView中嵌套GridView,ListView只显示一行的解决办法
- scrollview嵌套listview,gridview 显示不全万能解决办法
- ScrollView中嵌套GridView,ListView只显示一行的解决办法
- ListView(ScrollView)嵌套ListView、GridView显示不全,内容大于一行计算的高度不正确的解决办法
- [Android] 在ScrollView 中嵌套 GridView/ListView时只显示一行的原因和解决办法
- scrollview与listview、gridview嵌套高度冲突解决办法(优化版)
- ScrollView下嵌套多个列表视图如(ListView、Gridview等)引发的一系列问题及解决办法
- ScrollView 嵌套GridView,listView起始位置不是最顶部的解决办法
- ScrollView中嵌套GridView,ListView只显示一行的解决办法
- android ScrollView中嵌套GridView,ListView只显示一行的解决办法
- android ScrollView中嵌套GridView,ListView只显示一行的解决办法
- android ScrollView中嵌套GridView,ListView只显示一行的解决办法