andorid gridview 单行横向显示 横向滚动实现

实现方法:

布局时需要加一个HorizontalScrollView 保证GridView可以横向显示滑动

加HorizontalScrollView时GridView 外面需要加一个LinearLayout线性布局

     如:

<HorizontalScrollView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
         >


        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical" >


            <GridView
                android:id="@+id/gridView"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_gravity="center" >
            </GridView>
        </LinearLayout>
    </HorizontalScrollView>

item的布局根据自己要显示的数据随便定义

重点设置在代码中:

 int length你的数据长度 

 DisplayMetrics dm = new DisplayMetrics();  
        getWindowManager().getDefaultDisplay().getMetrics(dm);  
        float density = dm.density;  
        int gridviewWidth = (int) (110 * length* density);  
        int itemWidth = (int) (100 * density);  

根据屏幕密度和你的数据长度设置gridView的宽度,和每个item的宽度

 LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(  
                gridviewWidth , LinearLayout.LayoutParams.FILL_PARENT);  
        gridView.setLayoutParams(params);   //重点
        gridView.setColumnWidth(itemWidth);   //重点
        gridView.setHorizontalSpacing(10);  //间距
        gridView.setStretchMode(GridView.NO_STRETCH);  
        gridView.setNumColumns(length);   //重点



 实例下载点击打开链接


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值