1.概念

*连接后端数据和前端显示的适配器接口

*数据和UI之间的重要连接
 
2. ArrayAdapter
 ArrayAdapter构造器如下:

ArrayAdapter(Context context, int textViewResoureId, T[] objects)
ArrayAdapter(Context context, int textViewResourceId, List<T> objects)

参数分别是:上下文、控件视图、数据

例:

         list = new ArrayList<String>();
        list.add("A");
        list.add("B");
        list.add("C");
        list.add("D");
        adapter = new ArrayAdapter<String>(MainActivity.this, android.R.layout.simple_list_item_1, list);
        listview = (ListView) findViewById(R.id.listview);
        button = (Button) findViewById(R.id.button);
        button.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                listview.setAdapter(adapter);

            }
        });

3. SimpleAdapter

SimpleAdapter中每行可以显示多个控件的组合
SimpleAdapter构造器如下:

   SimpleAdapter(Context context,
                List<? extends Map<String, ?>> data,
                int resource,
                String[] from,
                int[] to)

参数分别是:上下文、数据、控件布局、数据的key、布局中控件的id

例:

        data = new ArrayList<Map<String, Object>>();
        Map<String, Object> map1 = new HashMap<String, Object>();
        map1.put("姓名", "超人");
        map1.put("技能", "飞");
        data.add(map1);
        Map<String, Object> map2 = new HashMap<String, Object>();
        map2.put("姓名", "蝙蝠侠");
        map2.put("技能", "跑");
        data.add(map2);
        String[] from = new String[]{"姓名","技能"};
        int[] to = new int[]{android.R.id.text1,android.R.id.text2};
        adapter = new SimpleAdapter(MainActivity.this, data, android.R.layout.simple_list_item_2, from, to);
        listview = (ListView) findViewById(R.id.listview);
        listview.setAdapter(adapter);

4.方法顺序

创建List数据->实例化Adapter->设置ListView中显示的数据

Adapter适配器的更多相关文章

  1. Android中ListView 控件与 Adapter 适配器如何使用?

    一个android应用的成功与否,其界面设计至关重要.为了更好的进行android ui设计,我们常常需要借助一些控件和适配器.今天小编在android培训网站上搜罗了一些有关ListView 控件与 ...

  2. Android adapter适配器的学习

    学习Android有一点时间,说说自己的学习感悟. 首先呢,先说说适配器的作用,顾名思义,它就是把数据定义好一定的规则,使得我们可以用到ListView GridView等上面 所以说这玩意,还是得好 ...

  3. Adapter(适配器)-类对象结构型模式

    1.意图 将一个类接口转换成客户希望的另外一个接口.Adapter模式使那些原本不能一起工作的类,可以一起工作. 2.别名 包装器 Wrapper. 3.动机 一个应用可能会有一些类具有不同的接口,并 ...

  4. Android adapter适配器的使用

    说起Adapter的使用,首先想到的就是listview或各种各样的Adapter.下面我们对常用的一些Adapter进行简单的使用讲解. 这是Adapter的关系图: 下面的所有例子均使用同一个布局 ...

  5. java adapter(适配器)惯用方法

    如果现在有一个Iterable类,你想要添加一种或多种在foreach语句中使用这个类的方法,例如方向迭代,应该怎么做呢? 如果之间继承这个类,并且覆盖iterator()方法,你只能替换现有的方法, ...

  6. android学习-Adapter适配器进阶

    参考资源 Android 快速开发系列 打造万能的ListView GridView 适配器 实现代码复用,争取打机**的时间. android4.4源码 target=android-19 一般自定 ...

  7. Adapter 适配器

    意图 将一个类的接口转换成客户希望的另外一个接口.Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作. 动机 在软件开发中,有的时候系统的数据和行为都正确,但接口不符合,我们应 ...

  8. 自定义ListView adapter适配器

    转自:http://hilary3113.iteye.com/blog/998352 listview加载adapter过程是这样的. 1 先判断adapter 有多少数据项,根据这个数据确定有多少i ...

  9. android 手写万能adapter适配器

    android开发中,我们离不开adapter,每个项目都有很多地方需要adapter,那么我们如何让自己少写adapter代码呢?那就是封装adapter,让我们的adapter成为万能的adapt ...

随机推荐

  1. 新浪微博客户端(17)-集成MJExtension

    使用MJExtension框架将字典转换为模型 DJHomeViewController.m /** 载入新的微博数据 */ - (void)loadNewStatues { AFHTTPSessio ...

  2. HNU 12833 Omar’s Bug(分情况讨论)

    题目链接:http://acm.hnu.cn/online/?action=problem&type=show&id=12833&courseid=268 解题报告:有个11个 ...

  3. Centos6.7安装Apache2.4+Mysql5.6+Apache2.4

    首先说下思路,因为一开始系统上已经跑了一套完成的 PHP 环境,那时候都是快速自动安装的,如果是跑一些5.3以下版本的话,很简单,几个指令,10分钟搞定了. 但现在要升级,彻底一点的话,唯有推倒重来了 ...

  4. ldd查询命令或软件共享的函数库(动态)

    <1> ldd - print shared library dependencies SYNOPSIS ldd [OPTION]... FILE... DESCRIPTION ldd p ...

  5. digitalocean添加ssh_keys

    链接为: https://cloud.digitalocean.com/settings/security

  6. Master-Worker模式

    并行程序设计模式--Master-Worker模式 简介 Master-Worker模式是常用的并行设计模式.它的核心思想是,系统有两个进程协议工作:Master进程和Worker进程.Master进 ...

  7. 《ASP.NET1200例》嵌套在DataLisT控件中的其他服务器控件---DropDownList控件的数据绑定

    aspx <script type="text/javascript"> function CheckAll(Obj) { var AllObj = document. ...

  8. 利用cocostudio库函数 实现左右滑动的背包栏UI (cocos2d-x 2.2.0)

    .h #ifndef __COMMON_COMPONENTS__ #define __COMMON_COMPONENTS__ #include "cocos2d.h" #inclu ...

  9. 74 使用BitSet输出数组中的重复元素

    [本文链接] http://www.cnblogs.com/hellogiser/p/using-bitset-to-print-duplicate-elements-of-array.html [题 ...

  10. Android 启动画面

    如果你的程序初始化时间过长,那么在初始化之前,程序会现实一个空白的activity页,十分难看. 添加一个启动画面的方法就是为响应的activity加入自定义的Theme,并在theme中设定 and ...