ListView图文列表: item模板
<?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" android:gravity="center_horizontal"> <ImageView android:id="@+id/imageView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/abc_ic_go_search_api_holo_light" /> <TextView android:id="@+id/textView1" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="TextView" /> </LinearLayout>
使用SimpleAdapter:
package com.example.android_listview_activity;
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.widget.ListView;
import android.widget.SimpleAdapter;
public class MainActivity4 extends Activity{
private ListView listView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
listView = (ListView)this.findViewById(R.id.listView1);
Map<String,Object> item1 = new HashMap<String,Object>();
item1.put("pic", R.drawable.abc_ic_go_search_api_holo_light);
item1.put("name", "北京");
Map<String,Object> item2 = new HashMap<String,Object>();
item2.put("pic", R.drawable.abc_ic_go_search_api_holo_light);
item2.put("name", "上海");
Map<String,Object> item3 = new HashMap<String,Object>();
item3.put("pic", R.drawable.abc_ic_go_search_api_holo_light);
item3.put("name", "成都");
Map<String,Object> item4 = new HashMap<String,Object>();
item4.put("pic", R.drawable.abc_ic_go_search_api_holo_light);
item4.put("name", "深圳");
List<Map<String,Object>> data = new ArrayList<Map<String,Object>>();
data.add(item1);
data.add(item2);
data.add(item3);
data.add(item4);
// from和to一一对应 绑定组件
String[] from = {"pic","name"};
int[] to = {R.id.imageView1,R.id.textView1};
SimpleAdapter simpleAdapter = new SimpleAdapter(this, data, R.layout.source, from, to);
listView.setAdapter(simpleAdapter);
}
}