把复杂的数据(数组、链表、数据库、集合等)填充到指定的视图界面上。
 
arrayAdapter(数组适配器):
     用于绑定一些格式单一的数据,数据源:数据或者集合。
 
private ListView listView ;
        private ArrayAdapter<String> adapter ;
        private SimpleAdapter simpleAdapter;
        @Override
        protected void onCreate(Bundle savedInstanceState) {
               super.onCreate(savedInstanceState);
              setContentView(R.layout. activity_main);
               listView=(ListView) findViewById(R.id. listView1);
               /**
               * 新建一个数据适配器
               * arrayadapter(上下文,当前 listview加载的每个列表项所对应的布局文件,所对应的数据源)
               */
              String[] data={ "az","az1" };
               adapter= new ArrayAdapter<String>(this ,android.R.layout.simple_list_item_1,data);
               //使用视图(listview)加载适配器
               listView.setAdapter( adapter);
       }
 
SimpleAdapter(简单适配器):
     用于绑定一些格式复杂的适配器,数据源:只能是特定的泛型集合。
private ListView listView ;
private SimpleAdapter simpleAdapter ;
 
               /**
               * context:上下文
               * data:数据源(特定的泛型集合) List<? extends Map<String, ?>> data 一个MAP所组成的LIST集合
               * ,每一个MAP都会对应 listview列表中的一行,每一个map中的KAY必须要包含所有在from中所指定的键
               * from:map中的键名
               * resource:列表项的布局文件
               * to:绑定数据视图中的ID,与from成对应关系
               */
               datalist= new ArrayList<Map<String, Object>>();
               simpleAdapter=new SimpleAdapter(this, getdata(), R.layout.activity_main , new String[]{"image", "text"}, new int[]{R.id.imageView1 ,R.id.textView1});
               listView.setAdapter( simpleAdapter);
 
private List<Map<String, Object>> getdata(){
               for (int i = 0; i < 20; i++) {
                     Map<String, Object>map= new HashMap<String,Object>();
                     map.put( "image", R.drawable.ic_launcher);
                     map.put( "text", "az" );
                      datalist.add(map);
              }
               return datalist ;
       }
 
数据适配器是链接数据源和视图界面的桥梁。
 
实现过程:新建适配器——添加数据源到适配器——视图加载适配器

Android 数据适配器的更多相关文章

  1. Android数据适配器(Adapter)优化:使用高效的ViewHolder

    原文链接:http://stackvoid.com/using-adapter-in-efficiency-way/ 在使用Listview或GridView的时候,往往须要自己定义数据适配器.一般都 ...

  2. Android数据适配器Adapter简介

    1.简介 Adapter是用来帮助填充数据的中间桥梁,简单点说就是:将各种数据以合适的形式显示到view上,在常见的View(List View,Grid View)等地方都需要用到Adapter! ...

  3. Android 常用数据适配器SimpleAdapter

    在<Android 常用数据适配器ArrayAdapter>中介绍了ArrayAdapter数据适配器.但是存在一个缺陷,那就是条目的图标都固定相同,要显示每个条目的图标都不相同,那么使用 ...

  4. Android 常用数据适配器ArrayAdapter

    接着上篇文章<Android 采用Layout Inflater创建一个View对象>,本文采用常用数据适配器ArrayAdapter 新建项目后,在layout文件夹下新建list_it ...

  5. 无废话Android之listview入门,自定义的数据适配器、采用layoutInflater打气筒创建一个view对象、常用数据适配器ArrayAdapter、SimpleAdapter、使用ContentProvider(内容提供者)共享数据、短信的备份、插入一条记录到系统短信应用(3)

    1.listview入门,自定义的数据适配器 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/and ...

  6. Android必学之数据适配器BaseAdapter

    什么是数据适配器? 下图展示了数据源.适配器.ListView等数据展示控件之间的关系.我们知道,数据源是各种各样的,而ListView所展示数据的格式则是有一定的要求的.数据适配器正是建立了数据源与 ...

  7. Android学习之Adapter(数据适配器)

    1.定义     数据适配器是AdapterView视图(如ListView - 列表视图控件.Gallery - 缩略图浏览器控件.GridView - 网格控件.Spinner - 下拉列表控件. ...

  8. ListView和Adapter数据适配器的简单介绍

    ListView 显示大量相同格式数据 常用属性: listSelector            listView每项在选中.按下等不同状态时的Drawable divider            ...

  9. Android进阶笔记10:Android 万能适配器

    1. Android 万能适配器      项目中Listview GridView几乎是必用的组件,Android也提供一套机制,为这些控件绑定数据,那就是Adapter.用起来虽然还不错,但每次都 ...

随机推荐

  1. The executable was signed with invalid entitlements新设备run出现这个问题

    出现这个问题一般是新手不熟悉开发者发布流程造成地 一定要安开发者流程一步一步走 这样就不会出错了 注意这几个地方地设置 1.

  2. iOS开发那些事儿(五)Objective-C浅拷贝与深拷贝

    浅拷贝:copy操作出来的对象指针直接指向模板的地址.即两个对象公用一块内存地址 #import <Foundation/Foundation.h> int main(int argc, ...

  3. DropdownList的处理总结

    创建一: List<SelectListItem> items = new List<SelectListItem>() { new SelectListItem(){Text ...

  4. php抽象类与接口的区别

    1.对接口的使用是通过关键字implements.对抽象类的使用是通过关键字extends.当然接口也可以通过关键字extends继承. 2.接口中不可以声明成员变量(包括类静态变量),但是可以声明类 ...

  5. ArrayList--卧槽这就是源码

    最近在<数据结构与算法分析(java版)>中看到了实现ArrayList的简易代码,亲自做了一下.个中的疑点还是在代码中实现了一下.其中就包括内部类Iterator对外部成员访问的问题. ...

  6. PCL学习笔记(一)

    由于项目需要,开始学习一下HP公司的PCL打印语言,发现这方面的中文资料非常少,我做下记录也为后人提供便利. 关于PCL的介绍可以参考wiki百科 http://zh.wikipedia.org/zh ...

  7. python作业day4计算器

    思路: 用循环提取最里面的括号,再进行运算 运算时利用正则表达式寻找相应的运算符 先进行乘除,再进行加减 (参考武sir和金角大王的代码) 流程图: 代码: #!/usr/bin/env python ...

  8. Android源码下载

    Android源码下载 1.安装git 2.安装repo 从这里 https://dl-ssl.google.com/dl/googlesource/git-repo/repo 下载repo文件 3. ...

  9. 2014第11周四Eclipse开发问题记

    今天开发中eclipse工具使用上又学到几点: 1.去除代码空行:在Find输入框中输入:^\s*\n然后替换为空即可: 2.eclipse插件的加载:对于单一个jar文件的插件,直接放在plugin ...

  10. poj3673---双重for循环

    #include <stdio.h> #include <stdlib.h> #include <string.h> #define MAX 15 int main ...