ScrollView 嵌套gridview

来源:互联网 发布:什么是淘宝注销账户? 编辑:程序博客网 时间:2024/06/04 23:21


当时搞这个问题的时候一直没清楚啥原因 后来网上找了是事件重叠的原因


应为 ScrollView  gridview都有自动滚动 那么我们重写 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的onMeasure方法,使其不会出现滚动条,ScrollView嵌套ListView也是同样的道理,不再赘述。

XML布局代码

<ScrollView Android:layout_height="wrap_content" 
        android:layout_width="fill_parent" android:id="@+id/scroll_content"> 
        <com.yourclass.MyGridView xmlns:android="http://schemas.android.com/apk/res/android" 
            android:id="@+id/grid_view" android:layout_width="fill_parent" 
            android:layout_height="wrap_content" android:numColumns="auto_fit" 
            android:horizontalSpacing="1dip" android:verticalSpacing="1dip" 
            android:columnWidth="150dip" android:stretchMode="columnWidth" 
            android:gravity="center"> 
             
        </com.yourclass.MyGridView> 
    </ScrollView>

Java调用代码

MyGridView gridview = (MyGridView) findViewById(R.id.grid_view); 
gridview.setAdapter(new ImageAdapter(this));

0 0
原创粉丝点击