Android中的GridView的简介,配置与使用

本文详细介绍了GridView在Android开发中的应用,包括其基本概念、如何通过XML配置实现九宫格布局及代码中Adapter的设置方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

gridview

GridView(网格视图)是按照行列的方式来显示内容的,一般用于显示图片,图片等内

容,比如实现九宫格图,用GridView是首选,也是最简单的。主要用于设置Adapter。

布局中的配置

GridView常用的XML属性:


属性名称                           描述

Android:columnWidth         设置列的宽度。

android:gravity             设置此组件中的内容在组件中的位置。
                            可选的值有:top、bottom、left、right
                             、center_vertical、fill_vertical、
                               center_horizontal、fill_horizontal
                                、center、fill、clip_vertical可以多
                                   选,用“|”分开。


android:horizontalSpacing           两列之间的间距。


android:numColumns                  设置列数。


android:stretchMode                     缩放模式。


android:verticalSpacing                两行之间的间距。

布局Demo

九宫格布局
 <GridView
    android:listSelector="@android:color/transparent"
    android:id="@+id/gv_home"  
      //设置列数
    android:numColumns="3"
     设置上下两行之间的距离
    android:verticalSpacing="10dp"
     设置总体布局
    android:layout_width="match_parent"
    android:layout_height="match_parent" >
</GridView>
 题外话:设置走马灯效果的布局文件配置
      android:ellipsize="marquee"

代码中的配置 设置adapter

  private class MyGridAdapter extends BaseAdapter {
       总共的条目的个数
    @Override
    public int getCount() {
        return names.length;
    }

    @Override
    /**
     * 返回,每一个列目的view对象   优化
     */
    public View getView(int position, View convertView, ViewGroup parent) {



        if (convertView == null) {
            convertView = View.inflate(HomeActivity.this, R.layout.grid_item_home,
                    null);
        }

        ImageView icon = (ImageView) view.findViewById(R.id.iv_icon_grid_home);
        icon.setBackgroundResource(iconIds[position]);

        TextView tvName = (TextView) view.findViewById(R.id.tv_name_grid_home);
        tvName.setText(names[position]);

        return convertView;
    }

    @Override
    public Object getItem(int position) {
        // TODO Auto-generated method stub
        return null;
    }

    @Override
    public long getItemId(int position) {
        // TODO Auto-generated method stub
        return 0;
    }

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值