public class ex06 extends Activity {
private ListView lv;
private TextView tv;
private DataModel dm;
private ArrayList<Map<String, Object>> coll;
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
dm = new DataModel();
setContentView(R.layout.list);
lv = (ListView)findViewById(R.id.list);
lv.setOnItemClickListener(listener);
tv = (TextView)findViewById(R.id.text);
coll = dm.loadData();
SimpleAdapter adapter = new SimpleAdapter(this, coll,
android.R.layout.simple_list_item_1, new String[] { "prod_na" },
new int[] {android.R.id.text1});
lv.setAdapter(adapter);
}
OnItemClickListener listener = new OnItemClickListener() {
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
tv.setTextColor(Color.YELLOW);
tv.setText(coll.get(arg2).get("prod_type").toString()); }
}; }
// ---- DataModel.java 程式碼 -------------------------------------
package com.misoo.ex06;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
public class DataModel {
public DataModel() {}
public ArrayList<Map<String, Object>> loadData() {
ArrayList<Map<String, Object>> coll
= new ArrayList<Map<String, Object>>();
Map<String, Object> item;
item = new HashMap<String, Object>();
item.put("prod_na", "Linux"); item.put("prod_type", "ST");
coll.add(item);
item = new HashMap<String, Object>();
item.put("prod_na", "Windows"); item.put("prod_type", "Mobile");
coll.add(item);
return coll;
}}
Step-3: 撰寫/res/layout/list.xml 的內容如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello World, ex06"
/>
<ListView android:id="@+id/list"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
</LinearLayout>
[/size][size=medium]
分享到:
相关推荐
private ArrayList<HashMap<String, Object>> list; // 用来控制CheckBox的选中状况 private ArrayList<Boolean> isSelected; // 上下文 private Context context; // 用来导入布局 private ...
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>(); Map<String, Object> map = new HashMap<String, Object>(); map.put("img", R.drawable.aa); map.put("title", "111"); map....
HashMap<String, Object> map = new HashMap<String, Object>(); map.put("numbTV", "D138026594664912200" + i); map.put("adrTv", "浙江省杭州市西湖区小和山"); map.put("timeTv", "2013-09-27 15:23"); map...
list = new ArrayList<Map<String, Object>>(); 2.为数据源设置适配器 MyAdapter adapter = new MyAdapter(); 3. 将适配过后的数据显示在GridView 上 gridView.setAdapter(adapter); 网格视图GridView 网格视图...
HashMap<String, Object> map = new HashMap<String, Object>(); map.put("child_item_title", "九州八拖二火锅" + i); map.put("child_item_price_old", "4." + i + "分"); map.put("child_item_price...
public List<Map<String, Object>> listMap = new ArrayList<Map<String, Object>>(); String curTag = ""; public List<Map<String, Object>> getListMap() { return listMap; } public void setListMap...
* from:名字数组,每个名字是为了在 ArrayList 数组的每一个 item 索引 Map<String,Object> 的 Object 用的。 * to:TextView 数组,这些 TextView 是以 id 的形式来表示的。 例如,创建一个 ListView 并将 ...
List<Map<String, Object>> data = new ArrayList<Map<String, Object>>(); for (int i = 1; i <= 10; i++) { Map<String, Object> map = new HashMap<String, Object>(); map.put("image", R.drawable.ic_...
这里我们使用一个`ArrayList<HashMap<String, Object>>`类型的列表来存储每一条数据的信息,包括图片资源、标题和内容。例如: ```java ArrayList<HashMap<String, Object>> listItem = new ArrayList<HashMap...
List<Map<String, Object>> list = new ArrayList<>(); Map<String, Object> map = new HashMap<>(); // 添加数据项 map.put("title", "G1"); map.put("info", "google1"); map.put("img", R.drawable.i1); ...
List<Map<String, Object>> listitem = new ArrayList<>(); Collections.sort(listitem, new Comparator<Map<String, Object>>() { @Override public int compare(Map<String, Object> o1, Map<String, Object> o2...
ArrayList<HashMap<String, Object>> dataList = new ArrayList<>(); // 填充数据 MyAdapter adapter = new MyAdapter(this, dataList); listView.setAdapter(adapter); ``` #### 四、总结 自定义`ListView`...
List<Map<String, Object>> listData = new ArrayList<>(); // 填充listData... Map<String, Object> item = new HashMap<>(); item.put("text", "姓名"); item.put("image", R.drawable.user_icon); listData.add...
List<Map<String, String>> data = new ArrayList<>(); data.add(new HashMap<String, String>() {{ put("name", "张三"); put("age", "25"); }}); data.add(new HashMap<String, String>() {{ put("name", "李四...
List<Map<String, Object>> data = new ArrayList<>(); for (Person person : persons) { Map<String, Object> item = new HashMap<>(); item.put("id", person.getId()); item.put("name", person.getName()); ...
List<Map<String, Object>> data = new ArrayList<>(); // 填充data... SimpleAdapter adapter = new SimpleAdapter(this, data, R.layout.list_item, from, to); listView.setAdapter(adapter); ``` 其中,`from`是...
List<Map<String, Object>> dataList = new ArrayList<>(); // 添加数据到dataList... Map<String, Object> item = new HashMap<>(); item.put("text", "文本内容"); item.put("image", R.drawable.image_res); ...
List<Map<String, String>> data = new ArrayList<>(); Map<String, String> map = new HashMap<>(); map.put("title", "示例标题"); data.add(map); return data; } } ``` 此例中,使用 SimpleAdapter 来...
3. **填充 ListView**:首先,你需要创建一个数据集,例如一个 `ArrayList<Map<String, Object>>`。然后,用这个数据集和布局文件 ID 创建一个 `SimpleAdapter` 实例,并将其设置给 `ListView` 的 `setAdapter()` ...
List<Map<String, Object>> myData = new ArrayList<Map<String, Object>>(); addItem(myData, "MediaPlayer", new Intent(this, MediaPlayerDemo.class)); addItem(myData, "VideoView", new Intent(this, ...