Android中如何使用GridView

首先在主XML中放入Grid View控件 取好id

  private GridView gv1;
    private int[] icon = {R.drawable.cat, R.drawable.cow, R.drawable.dog, R.drawable.hamster};
    private String[] iconName = {"英雄介绍", "技能", "天赋推荐", "推荐出装"};
    private List<Map<String, Object>> data_list = new ArrayList<Map<String, Object>>();

    private SimpleAdapter simpleAdapter;

在声明一个xml文件

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="match_parent">
    <ImageView
        android:id="@+id/image1"
        android:layout_width="100dp"
        android:layout_height="100dp"
        />
    <TextView
        android:id="@+id/text1"
        android:layout_width="100dp"
        android:layout_height="30dp"
        />
</LinearLayout>

这个里面放置的就是你每一个网格的布局
(自己根据需要设置)
记得起好Id,下面用的时候会说自定义的xml

在类里面声明的东西,Grid View控件
icon数组里面放入的是图片
iconName放入相对应的名字

(都是根据自己的需要改名字和图片)
建一个List数组泛型为Map<String,Object>
声明一个Simple Adapter

  private List<Map<String, Object>> getDaste() {
        for (int i = 0; i < icon.length; i++) {
            Map<String, Object> map = new HashMap<>();
            map.put("image", icon[i]);
            map.put("text", iconName[i]);
            data_list.add(map);
        }
        return data_list;
    }

建立一个getDaste方法
给Map<String,Object>填充数据
每建立一个Map,都填充两个数据一个是图片,一个是名字
然后再往刚才声明的List里面添加,添加完在重新声明一个Map
while(true)…

gv1 = findViewById(R.id.gridview1);
        getDaste();
        String[] form = {"image", "text"};
        int[] to = {R.id.image1, R.id.text1};
        //创建适配器对象
        simpleAdapter = new SimpleAdapter(MainActivity.this, data_list, R.layout.item, form, to);
//        simpleAdapter = new SimpleAdapter(MainActivity.this,data_list,R.layout.item,form,to);
        gv1.setAdapter(simpleAdapter);

把声明的Grid View绑定上(通过Id)
调用刚才创建的方法
在建立俩个数组
第一个数组放的是下标(取Map里面的数据所使用的)
第二个数组放的是控件(自定义的xml里面的id
使用Simple Adapter的构造方法(当前类,数据源(就是把Map存起来的List),自己声明的那个xml,Map需要的下标,赋值给哪个文件(这里是通过Id进行赋值的))
最后一步,给Grid View进行填充数据

运行结果:
在这里插入图片描述

发布了1080 篇原创文章 · 获赞 845 · 访问量 9万+

猜你喜欢

转载自blog.csdn.net/a1439775520/article/details/103145549
今日推荐