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

来源:互联网 发布:js获取表单某个数据 编辑:程序博客网 时间:2024/05/21 18:46

  实现方法:

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

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

    如:

    <horizontalscrollview< p="">

    android:layout_width=fill_parent

    android:layout_height=wrap_content

    >

   

  • android:layout_width=fill_parent

        android:layout_height=wrap_content

        android:orientation=vertical >

        <gridview< p="">

        android:id=@+id/gridView

        android:layout_width=fill_parent

        android:layout_height=wrap_content

        android:layout_gravity=center >

       

       

        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); //重点

  • 0 0