Android 不简单的SimpleAdapter

simpleAdapter是最基本也是最常用的,虽然可以实现自己的adapter(baseadapter等),但是比较复杂而且没有必要。

package com.cn.demo05vitamio;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.ActionBarActivity;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ListView;
import android.widget.SimpleAdapter;

public class MainActivity extends ActionBarActivity {
	private ListView lView;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);

		lView = (ListView)findViewById(R.id.list);
		lView.setAdapter(new SimpleAdapter(this, getdata(), R.layout.mylist_item,
				new String[]{"title",}, new int[]{R.id.text1}));
		lView.setOnItemClickListener(new OnItemClickListener() {

			@SuppressWarnings("unchecked")
			@Override
			public void onItemClick(AdapterView<?> parent, View view,
					int position, long id) {
				Map<String, Object> map = (Map<String, Object>)parent.getItemAtPosition(position);
				Intent intent =(Intent)map.get("intent");
				startActivity(intent);
			}
		});
	}

	private List<Map<String, Object>> getdata() {
		List<Map<String, Object>> myData = new ArrayList<Map<String,Object>>();
		addItem(myData,"title01",new Intent(this, Demo01.class));
		addItem(myData,"ttile02",new Intent(this, Demo02.class));
		return myData;
	}

	private void addItem(List<Map<String, Object>> myData, String string,
			Intent intent) {
		Map<String, Object> map = new HashMap<String, Object>();
		map.put("title", string);
		map.put("intent", intent);
		myData.add(map);
	}
}

布局文件R.layout.mylist_item可以自己随意定义样式。

时间: 2024-11-14 12:25:30

Android 不简单的SimpleAdapter的相关文章

android开发之SimpleAdapter的使用

使用ArrayAdapter只能显示TextView,显示的内容比较单一.可以使用SimpleAdapter来让每一项显示的内容更加丰富.以下将实现一个样例,先上效果图. 首先,先来看看xml代码,同样需要一个主布局和一个表示每一个列表项的布局.如下: main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.an

Android UI:ListView -- SimpleAdapter

SimpleAdapter是扩展性最好的适配器,可以定义各种你想要的布局,而且使用很方便. layout : 1 <?xml version="1.0" encoding="utf-8"?> 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 3 android:layout_width="match_parent&quo

Android开发(十四)——SimpleAdapter与自定义控件

ListView中可以使用SimpleAdapter进行数据与视图的绑定,但都是对已有的系统控件的绑定,如果自定义空间直接使用SimpleAdapter绑定,则会报错. 如,使用CircleImageView圆形头像,直接不能绑定需要重新SimpleAdapter方法. eg:android ListView 重写 SimpleAdapter 显示图片 异步加载及文字处理 simpleAdapter=new SimpleAdapter(context, mData, R.layout.goods

Android -- ListView(SimpleAdapter) 自定义适配器

2.  代码 MainActivity package com.himi; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.widget.AdapterVie

android之ListView和SimpleAdapter的组合使用

SimpleAdapter是简单适配器.可以将准备好的数据显示在ListView中.更多信息可以看看Android 官方API开发文档. 示例说明:在SimpleAdapterListViewActivity.java中的内容: package com.zzh.day_listview; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import

BaseAdapter,SimpleAdapter,CursorAdapter的用法

简单好用的Adapter---ArrayAdapter ArrayAdapter是BaseAdapter的派生类,在BaseAdapter的基础上,添加了一项重大的功能:可以直接使用泛型构造. 我们先来看一个简单的例子: @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main);

Android常用Adapter用例(二)

Android适配器之-----SimpleAdapter 结构 继承关系 public interface SpinnerAdapter extends Adapter java.lang.Object android.widget.BaseAdapter android.widget. SpinnerAdapter 类概述 这是一个简单的适配器,可以将静态数据映射到XML文件中定义好的视图.你可以指定数据支持的列表如ArrayList组成的Map.在ArrayList中的每个条目对应List

Android(java)学习笔记133:ListViewProject案例02

这个案例可能稍微复杂一点,我会讲述详细一点: 1.首先是AndroidManifest.xml: <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.himi" android:versionCode="1&qu

android学习之ListView如何使用

                                  2014-08-31 标签:数据源 listview android 移动开发 ListActivity ListView是Android一系列组件之一,它以垂直列表的方式列出所需的列表项.实现方式有两种:  * 第一种:使用ListView组件  * 第二种:当前的Activity继承ListActivity ListView是需要绑定数据源的----->ArrayAdapter.SimpleAdapter.SimpleCur