SimpleAdapter的应用
来源:互联网 发布:表单数据 编辑:程序博客网 时间:2024/06/06 08:33
SimpleAdapter
SimpleAdapter是扩展性最好的适配器,可以定义各种你想要的布局,而且使用很方便SimpleAdapter(Context context, List<? extends Map<String, ?>> data, int resource, String[] from, int[] to)参数context:上下文,比如this。关联SimpleAdapter运行的视图上下文参数data:Map列表,列表要显示的数据,这部分需要自己实现,如例子中的getData(),类型要与上面的一致,每条项目要与from中指定条目一致参数resource:ListView单项布局文件的Id,这个布局就是你自定义的布局了,你想显示什么样子的布局都在这个布局中。这个布局中必须包括了to中定义的控件id参数 from:一个被添加到Map上关联每一个项目列名称的列表,数组里面是列名称参数 to:是一个int数组,数组里面的id是自定义布局中各个控件的id,需要与上面的from对应
备注:SimpleAdapter可以使用自定义的ListView,然后setContentView即可。也可以直接使用系统自带的ListAcitivity,该ListActivity实现了ListView,显示ListView的时候做了很多优化。
MainActivity.java
package com.example.sqiist;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;import android.content.Context;import android.os.Bundle;import android.support.v7.app.ActionBarActivity;import android.widget.ImageView;import android.widget.ListView;import android.widget.SimpleAdapter;import android.widget.TextView;public class MainActivity extends ActionBarActivity { //声明一个listView,并初始化 private List<Map<String,Object>> list = new ArrayList<Map<String,Object>>(); private ListView myListView; private ImageView myImageView; private TextView myTextView; private Context context; //声明一个TextView数据的数组 private String [] text_number = {"1","2","3","4"}; //声明一个Button数据的数组 private String [] btn_title={"1","2","3","4"}; //声明一个image地址的数组 private int [] image_int = {R.drawable.ic_tiem,android.R.drawable.ic_menu_delete,android.R.drawable.ic_menu_edit,android.R.drawable.ic_menu_view}; @Override protected void onCreate(Bundle savedInstanceState) { //复写Oncreat方法 super.onCreate(savedInstanceState); //绑定布局文件Activity_main setContentView(R.layout.activity_main); context = MainActivity.this;//初始化context myListView = (ListView)findViewById(R.id.myListView);//获取listView控件 //规定从哪里来 String [] from = {"text_number","btn_title","image_int"}; //规定到哪里去,并且与from对应 int [] to = {R.id.myTextView,R.id.myButton,R.id.myImageView}; //创建SimpleAdapter,并填入数据 SimpleAdapter listItemAdapter = new SimpleAdapter(context,getDatas(),R.layout.other,from,to); //绑定ListItemAdapter myListView.setAdapter(listItemAdapter); } //创建getDatas方法得到单一listview的布局 public List<Map<String,Object>> getDatas(){ //for循环得每个list for(int i = 0;i < 4;i++){ HashMap<String,Object> map = new HashMap<String,Object>(); map.put("text_number","1"); map.put("btn_title", "1"); map.put("image_int", image_int[i]); list.add(map); } //返回list return list; }}
Activity_main.xml
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" ><ListView android:layout_width="fill_parent" android:layout_height="fill_parent" android:id="@+id/myListView" ></ListView></LinrLayout>
activity_main.xml
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" ><ListView android:layout_width="fill_parent" android:layout_height="fill_parent" android:id="@+id/myListView" ></ListView></LinearLayout>
other.xml
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal" ><ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/myImageView" /> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:id="@+id/myTextView" /> <Button android:layout_width="fill_parent" android:layout_height="wrap_content" android:id="@+id/myButton" /> </LinearLayout></LinearLayout>
其中添加imageView中的图片:
1.下载图片
2.更改图片格式png
3.点击图片移动到res.drawable中任意一个
4.引用地址R.drawable.ic_item(ic_item是图片名称)
0 0
- SimpleAdapter的应用
- android GridView应用和SimpleAdapter的应用
- 【Android】ContextMenu与SimpleAdapter的应用示例
- ListView应用--SimpleAdapter
- ListView应用Demo-使用SimpleAdapter
- Android的SimpleAdapter
- simpleAdapter的构造参数
- simpleAdapter的构造函数
- Android SimpleAdapter的参数
- SimpleAdapter支持的控件
- SimpleAdapter适配器的使用
- SimpleAdapter的例子
- SimpleAdapter的简单介绍
- SimpleAdapter的用法
- SimpleAdapter的用法
- SimpleAdapter的基本使用
- ListView -- SimpleAdapter的使用
- simpleAdapter的使用
- Android 那些你所不知道的Bitmap对象详解
- 计蒜客 联想专卖店大促销
- struts2 面试题
- codeforces 2A-Winner (map)
- DEV调试C++项目实例
- SimpleAdapter的应用
- jvm垃圾收集器配置-1
- 下面哪些特性可能导致代码体积膨胀:----腾讯2016研发工程师在线模拟笔试题
- ATOM基础教程一ATOM自定义代码片段(8)
- bzoj1026 [SCOI2009]windy数(数位dp)
- C语言培训_005
- [POJ3133]Manhattan Wiring 插头dp
- Spring核心技术(九)——Spring管理的组件和Classpath扫描
- 疯狂JAVA讲义比较--JAVA概述