修改ArrayList

//准备要添加的数据条目
        List<Map<String, Object>> items = new ArrayList<Map<String,Object>>();

        Map<String, Object> item;


        for (int i = 0; i < 10; i++)
        {
        item = new HashMap<String, Object>();//每次都要new一个HashMap!
            item.put("textItem", "节点"+ (i+1) +"         \n\n" + cursor.getString(5 + 3*i) + " °C   \n" + cursor.getString(6 + 3*i).substring(0, 5)+"  %  ");
            items.add(item);
        }
        
        //实例化一个适配器
        SimpleAdapter adapter = new SimpleAdapter(this, items, R.layout.grid_item, new String[]{"textItem"}, new int[]{R.id.text_item});
        
      //将GridView和数据适配器关联

        mygridview.setAdapter(adapter);

//修改

item = new HashMap<String, Object>();
        item.put("textItem", "aaa");
        items.set(3, item);

一个item对象是一个HashMap的引用, 而HashMap是一个映射序号(到某个内存区域?没搞明白呢)。如果每次不new一个HashMap,那么不管item改变多少次,其实每次item修改的区域都是同一个空间,加入到Arraylist里面的都是同一个HashMap,那么最后arraylist里每一个元素的内容都是最后添加的那个值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值