Android 数据适配器

把复杂的数据(数组、链表、数据库、集合等)填充到指定的视图界面上。

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 ;

}

数据适配器是链接数据源和视图界面的桥梁。

实现过程:新建适配器——添加数据源到适配器——视图加载适配器

时间: 2024-10-16 12:20:29

Android 数据适配器的相关文章

Android数据适配器(Adapter)优化:高效ViewHolder

在使用Listview或GridView的时候,往往需要自定义数据适配器,一般都要覆写getView(),在该方法中有一个convertView参数,该参数就是用来加载数据时的View. 在使用Listview或GridView的时候,往往需要自定义数据适配器,一般都要覆写getView(),在该方法中有一个convertView参数,该参数就是用来加载数据时的View. 初学者简单但低效的方式 public View getView(int position, View convertView

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

在使用Listview或GridView的时候,往往需要自定义数据适配器,一般都要覆写getView(),在该方法中有一个convertView参数,该参数就是用来加载数据时的View. 初学者简单但低效的方式 1 public View getView(int position, View convertView, ViewGroup parent) { 2 3 View item= inflater.inflate(R.layout.good_list_item, null, false);

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

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

Android必学之数据适配器BaseAdapter

.什么是数据适配器? 下图展示了数据源.适配器.ListView等数据展示控件之间的关系.我们知道,数据源是各种各样的,而ListView所展示数据的格式则是有一定的要求的.数据适配器正是建立了数据源与ListView之间的适配关系,将数据源转换为ListView能够显示的数据格式,从而将数据的来源与数据的显示进行解耦,降低程序的耦合性.这也体现了Android的适配器模式的使用.对于ListView.GridView等数据展示控件有多种数据适配器,本文讲解最通用的数据适配器——BaseAdap

Android 常用数据适配器SimpleAdapter

在<Android 常用数据适配器ArrayAdapter>中介绍了ArrayAdapter数据适配器.但是存在一个缺陷,那就是条目的图标都固定相同,要显示每个条目的图标都不相同,那么使用SimpleAdapter 新建项目后,在layout文件夹下新建list_item.xml文件,接着编辑布局,代码如下: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:andro

Android 常用数据适配器ArrayAdapter

接着上篇文章<Android 采用Layout Inflater创建一个View对象>,本文采用常用数据适配器ArrayAdapter 新建项目后,在layout文件夹下新建list_item.xml文件,接着编辑布局,代码如下: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/

Android学习笔记(10)——数据适配器ArrayAdapter和SimpleAdapter

上一篇文章我们介绍了关于ListView的基本知识,也说到了一些关于数据适配器Adapter的问题,这里我们继续介绍两种比较常见的数据适配器的类型,ArrayAdapter和SimpleAdapter.这两种适配器各自有各自的特点,适用于不同的情况. ArrayAdapter 这种适配器比较简单,常用于仅仅是文本内容的ListView.没有图标或者比较复杂的布局的情况下,实现方法主要就是去填写构造函数中的参数,ArrayAdapter函数的构造方法有好几种,这里介绍了最主要的两种情况,具体可以看

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

1.定义     数据适配器是AdapterView视图(如ListView - 列表视图控件.Gallery - 缩略图浏览器控件.GridView - 网格控件.Spinner - 下拉列表控件.AutoCompleteTextView - 自动提示文本框.ExpandableListView - 支持展开/收缩功能的列表控件等)与数据之间的桥梁,用来处理数据并将数据绑定到AdapterView上. 2.作用    数据适配器是连接数据源和视图界面的桥梁. 3.分类     包括ArrayA

Android——数据存储(四种方式之一)SharedPrefereces

Android--数据存储(四种方式) 1.SharedPrefereces   轻量级.XML  存储文件名,数据保存在data/data/basepackage/shared_prefs/myopt.xml中   实例-收藏-记住密码自动登录 //一种轻量级的数据存储方式//通过KEY 存入数据--putxxxx(key,value) 取出数据--getxxxx(key  default)   2.读写SD卡  SD的根目录  适用于数据流读写 3.SQLite  轻量级.dp文件多用于手机