三种Android适配器

原创 2016年06月01日 17:44:52

 第一种:arrayAdapter

               听名字就知道,这是一种以一种类似数组的方式来存储数据,然后再传递的适配器,也是比较简单的适配器。

               用法:1)建一个ListView控件,并加上id,方法与textView一样;另外再单独建一个textView单没有布局;

                         2)实例化ListView得到mLextView,并监听;

                         3)  获得数据源,如String[] data={"java","android","j2se","html","wphone","net","javaScript"};就是列出你                                想展示的东西;

                         4)  实例化适配器  arrayAdapter adapter=new arrayAdapter (this,R.DANDUtxt_layout,data);

                         5)  链接适配器与数据源     mLextView.setAdapter(adpter);



 第二种:simpleAdapter

               据说这是最难最常用的适配器之一;用法与arrayAdapter大同小异;

               

用法:1)建一个ListView控件,并加上id,方法与textView一样;另外再单独建一个布局,内容根据实际情况来写;

                         2)实例化ListView得到mLextView,并监听;

                         3)  获得数据源,这里会用到HASHMap和ArrayList来存储数据;                    

                         4)  实例化适配器  arrayAdapter adapter=new arrayAdapter (this,R.DANDUtxt_layout,data);

                         5)  链接适配器与数据源     mLextView.setAdapter(adpter);

                         


  第三种:baseAdapter 自定义适配器,也是我认为最难的一种,这里我只有一点的经验可以分享;

               用法:1)建一个类继承自baseAdapter;里面要实现4种方法;如图

                                

                                这里前三种方法都比较简单,我上面已经写好了,就第四种才是真正自定义的部分;

                                在这里一般思路是先定义一个layoutinflater将你写的布局解析成view控件,再从中分别取值;

                                将数据源的值赋给取到的view控件;最后就可以使用这个自己定义的适配器了

                                 下面来举个例子,

                                  public View getView(int position, View convertView, ViewGroup parent) {
        View v = layoutInflater.inflate(R.layout.item_adapter_simple_view,null);//将布局解析生成View对象
        //从View对象中获取控件实例
        ImageView iconImg = (ImageView) v.findViewById(R.id.adapter_simple_imageview);
        TextView titleTxt = (TextView) v.findViewById(R.id.adapter_simple_title_txt);
        TextView contentTxt = (TextView) v.findViewById(R.id.adapter_simple_content_txt);


        HashMap<String,Object> item = (HashMap<String, Object>) getItem(position);
        int icon = (int) item.get("icon");
        String title = (String) item.get("title");
        String content = (String) item.get("content");


//        iconImg.setBackgroundResource(icon);  // 通过代码设置ImageView背景  background
        iconImg.setImageResource(icon); //通过代码设置 ImageView控件内容  src
        titleTxt.setText(title);
        contentTxt.setText(content);


        return v;
    }

   

                         

android中的三种适配器

第一种: ArrayAdapter(只能显示单一的TextView) /** *第一个参数填上下文对象 *第二个参数填每个item的布局文件(注意ArrayAdapter的item布局文件只能是...
  • LDH_123
  • LDH_123
  • 2016年12月03日 08:58
  • 2053

Android 解读适配器

一、数据适配器 作用:把复杂的数据填充在制定视图界面上。 1.数组适配器:用于绑定格式单一的数据。 数据源:可以是集合或数组。 2.简单适配器:用于绑定格式复杂的数据。 数据源:只能是特定泛型的...
  • CSDNgaoqingrui
  • CSDNgaoqingrui
  • 2018年02月02日 15:41
  • 9

设计模式(二) 三种适配器模式 总结和使用场景

转载请标明出处: http://blog.csdn.net/zxt0601/article/details/52703280本文出自:【张旭童的博客】一 概述定义:适配器模式将某个类的接口转换成客...
  • zxt0601
  • zxt0601
  • 2016年10月18日 16:34
  • 4056

安卓适配器的简单介绍

常用适配器简单介绍
  • leeziyuan
  • leeziyuan
  • 2015年11月08日 11:41
  • 985

STL学习系列之六—容器适配器

STL学习系列之六—容器适配器 STL提供了三种容器适配器:stack,queue,priority_queue。 适配器并不是第一类容器,因为它们并没有提供与元素的保存形式有关的真正数据结构实现...
  • feitianxuxue
  • feitianxuxue
  • 2012年02月11日 11:49
  • 7794

适配器模式(三种)简单使用

前言 适配器模式是将一个类的接口转换成客户希望的另外一个接口,身边很多东西都是适用于适配器模式的,笔记本的电源(也叫电源适配器),是将220V的交流电转换为笔记本电脑所需要的12V(电流先忽略),笔...
  • u012359453
  • u012359453
  • 2018年01月25日 18:03
  • 37

在android里保存数据的三种形式(Saving Data)

Saving Data Most Android apps need to save data, even if only to save information about the app sta...
  • Buaaroid
  • Buaaroid
  • 2015年06月11日 13:51
  • 3936

android之Viewpage三种适配器详解

在一个 Android 应用中,我使用 FragmentPagerAdapter 来处理多 Fragment 页面的横向滑动。不过我碰到了一个问题,即当 Fragment 对应的数据集发生改变时,我...
  • Jack_King007
  • Jack_King007
  • 2014年11月23日 18:19
  • 10482

Android中几种适配器的使用方法

一,适配器.          顾名思义,就是把一些数据给弄得适当,适合以便于在View上显示。可以看作是 界面数据绑定的一种理解。它所操纵的数据一般都是一些比较复杂的数据,如数组,链表,数据库,集...
  • zhang_hongli_li
  • zhang_hongli_li
  • 2014年11月24日 19:33
  • 3004

Android之三种Menu的使用与分析

请尊重他人劳动成果,请勿随意剽窃,转载请注明,谢谢!转载请注明出处:http://blog.csdn.net/evan_man 以下说明全部针对Android3.0(Api-11)。本指南将...
  • evan_man
  • evan_man
  • 2016年06月15日 20:27
  • 26859
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:三种Android适配器
举报原因:
原因补充:

(最多只允许输入30个字)