zoukankan      html  css  js  c++  java
  • ScrollView嵌套GridView的解决办法

    前些日子在开发中用到了需要ScrollView嵌套GridView的情况,由于这两款控件都自带滚动条,当他们碰到一起的时候便会出问题,即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> 
  • 相关阅读:
    Yii 动作过滤的方法
    artdialog
    第一天:安装nodejs
    yii模块下面的组件
    总是容易忘记 jquery ajax POST
    【来自简书】浏览器~加载,解析,渲染
    【收藏】九个PHP很有用的功能
    从理论到实践,全方位认识DNS(实践篇)
    从理论到实践,全方位认识DNS(理论篇)
    DNS解析过程原理
  • 原文地址:https://www.cnblogs.com/622698abc/p/3141497.html
Copyright © 2011-2022 走看看