Android组件——ListView

 
 
最近开始学习Android编程了,自己也是在网上找例子来做,下面这个是自己定义了一个list的布局文件,可以显示
片和文字。自己理解就是List需要一个布局文件,然后有适配器来向里面填充数据。下面是效果图:
Android组件——ListView

 package dong.liu;

 

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

import android.app.ListActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.Toast;

public class SimpleAdapterList extends ListActivity {
	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		SimpleAdapter adapter = new SimpleAdapter(this, getData(),
				R.layout.vlist, new String[] { "title", "info", "img" },
				new int[] { R.id.title, R.id.info, R.id.img });
		setListAdapter(adapter);
	}

	@Override
	protected void onListItemClick(ListView l, View v, int position, long id) {
		Toast.makeText(this, "你单击了"+position,Toast.LENGTH_SHORT).show();
	}

	private List<Map<String, Object>> getData() {
		List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
		Map<String, Object> map = new HashMap<String, Object>();
		map.put("title", "大会议程");
		map.put("info", "以当天时间为准");
		map.put("img", R.drawable.dahui);
		list.add(map);

		map = new HashMap<String, Object>();
		map.put("title", this.getString(R.string.guest_title));
		map.put("info", this.getString(R.string.guest_info));
		map.put("img", R.drawable.yanjiang);
		list.add(map);

		map = new HashMap<String, Object>();
		map.put("title",this.getString(R.string.map_title));
		map.put("info",this.getString(R.string.map_info));
		map.put("img", R.drawable.map);
		list.add(map);

		map = new HashMap<String, Object>();
		map.put("title", this.getString(R.string.contact_title));
		map.put("info", this.getString(R.string.contact_info));
		map.put("img", R.drawable.contact);
		list.add(map);
		return list;
	}
}

你可能感兴趣的:(编程,android,OS)