文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

【Android从零单排系列二十二】《Android视图控件——GridView》

2023-09-01 09:49

关注

目录

前言

一 GridView基本介绍

二 GridView使用方法

三 GridView常见属性及方法

四 总结


前言

小伙伴们,在上文中我们介绍了Android视图组件ExpandableListView,本文我们继续盘点,介绍一下视图控件的GridView。

一 GridView基本介绍

GridView是一个在Android中常用的布局控件,它可以以网格形式展示数据,类似于表格或者矩阵。GridView可以按照指定的行数和列数将数据显示在多个单元格中,使得数据呈现出规律的排列方式。

GridView通过Adapter来提供数据,并且可以自定义每个单元格的布局。用户可以自定义Adapter来适配各种数据源,并为每个单元格设置不同的视图样式和内容。

GridView还支持交互操作,例如点击单元格进行响应事件,滚动显示大量数据等。

二 GridView使用方法

  1. 在 XML 布局文件中添加 GridView:
  2. 准备数据源:为 GridView 提供数据。通常情况下,你可以使用一个适配器(Adapter)来管理数据。
    List dataList = new ArrayList<>(); // 数据列表// 添加数据dataList.add("Item 1");dataList.add("Item 2");dataList.add("Item 3");// 添加更多数据...
  3. 创建适配器(Adapter):创建一个适配器类,并继承自 BaseAdapter 类,实现必要的方法以提供数据和视图绑定。
    public class MyGridAdapter extends BaseAdapter {    private List dataList;    private Context context;    public MyGridAdapter(Context context, List dataList) {        this.context = context;        this.dataList = dataList;    }    // 实现必要的方法...    @Override    public int getCount() {        return dataList.size();    }    @Override    public Object getItem(int position) {        return dataList.get(position);    }    @Override    public long getItemId(int position) {        return position;    }    @Override    public View getView(int position, View convertView, ViewGroup parent) {        ViewHolder holder;        if (convertView == null) {            LayoutInflater inflater = LayoutInflater.from(context);            convertView = inflater.inflate(R.layout.grid_item_layout, parent, false);            holder = new ViewHolder();            holder.itemTextView = convertView.findViewById(R.id.itemTextView);            convertView.setTag(holder);        } else {            holder = (ViewHolder) convertView.getTag();        }        String item = dataList.get(position);        holder.itemTextView.setText(item);        return convertView;    }    private static class ViewHolder {        TextView itemTextView;    }}
  4. 创建 grid_item_layout.xml 布局文件:创建一个布局文件,用于定义 GridView 中每个单元格的样式。例如,可以在布局中放置一个 TextView 来显示数据。
  5. 在代码中设置适配器:
    // 获取 GridViewGridView gridView = findViewById(R.id.gridView);// 创建适配器MyGridAdapter adapter = new MyGridAdapter(this, dataList);// 设置适配器gridView.setAdapter(adapter);// 设置项点击事件监听器gridView.setOnItemClickListener(new AdapterView.OnItemClickListener() {    @Override    public void onItemClick(AdapterView parent, View view, int position, long id) {        // 处理项点击事件    }});

三 GridView常见属性及方法

常见属性:

  1. numColumns:设置GridView的列数。
  2. stretchMode:设置当行中所有单元格不足一行时,如何拉伸填充空白区域。
  3. columnWidth:设置每列的宽度。
  4. horizontalSpacing:设置水平方向上单元格之间的间距。
  5. verticalSpacing:设置垂直方向上单元格之间的间距。
  6. gravity:设置单元格内容的对齐方式。

常见方法:

  1. setAdapter(Adapter adapter):设置GridView的数据适配器。
  2. setOnItemClickListener(AdapterView.OnItemClickListener listener):设置单元格点击事件监听器。
  3. setOnItemLongClickListener(AdapterView.OnItemLongClickListener listener):设置单元格长按事件监听器。
  4. smoothScrollToPosition(int position):平滑地将GridView滚动到指定位置。
  5. getFirstVisiblePosition():获取当前可见的第一个单元格的位置。
  6. getLastVisiblePosition():获取当前可见的最后一个单元格的位置。

四 总结

总之,GridView是Android开发中常用的用于展示数据的布局控件,特点是可以将数据按照网格形式展示,并支持自定义布局和交互操作。

来源地址:https://blog.csdn.net/shaoyezhangliwei/article/details/126494024

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-移动开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯