专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > Android

Android 牛逼的SimpleAdapter

发布时间:2010-05-30 02:57:26 文章来源:www.iduyao.cn 采编人员:星星草
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可以自己随意定义样式。

友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: