Chinaunix首页 | 论坛 | 博客
  • 博客访问: 41486
  • 博文数量: 71
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 726
  • 用 户 组: 普通用户
  • 注册时间: 2014-11-24 08:29
文章分类

全部博文(71)

文章存档

2015年(71)

我的朋友

分类: Android平台

2015-02-19 22:24:08

layout
main.xml
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <LinearLayout xmlns:android=""
  3.     android:layout_width="match_parent"
  4.     android:layout_height="match_parent"
  5.     android:orientation="vertical" >

  6.     <ListView
  7.         android:id="@+id/listView"
  8.         android:layout_width="match_parent"
  9.         android:layout_height="wrap_content" >
  10.     </ListView>

  11. </LinearLayout>
item.xml
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <LinearLayout xmlns:android=""
  3.     android:layout_width="match_parent"
  4.     android:layout_height="match_parent"
  5.     android:orientation="horizontal" >

  6.     <ImageView
  7.         android:id="@+id/id_pic"
  8.         android:layout_width="wrap_content"
  9.         android:layout_height="wrap_content"
  10.         android:layout_marginLeft="15dp"
  11.         android:src="@drawable/ic_launcher" />

  12.     <TextView
  13.         android:id="@+id/id_text"
  14.         android:layout_width="wrap_content"
  15.         android:layout_height="wrap_content"
  16.         android:text="demo"
  17.         android:textColor="#000000"
  18.         android:textSize="20sp" />

  19. </LinearLayout>
java

  1. package com.example.imooc_listview;

  2. import java.util.ArrayList;
  3. import java.util.HashMap;
  4. import java.util.List;
  5. import java.util.Map;

  6. import android.app.Activity;
  7. import android.os.Bundle;
  8. import android.widget.ArrayAdapter;
  9. import android.widget.ListView;
  10. import android.widget.SimpleAdapter;

  11. public class MainActivity extends Activity {

  12.     private ListView listView;
  13.     private ArrayAdapter<String> arr_adapter;
  14.     private SimpleAdapter simp_adapter;
  15.     private List<Map<String, Object>> dataList;

  16.     @Override
  17.     protected void onCreate(Bundle savedInstanceState) {
  18.         super.onCreate(savedInstanceState);
  19.         setContentView(R.layout.main);
  20.         listView = (ListView) findViewById(R.id.listView);
  21.         dataList = new ArrayList<Map<String, Object>>();
  22.         /*
  23.          * 1.新建一个适配器 ArrayAdapter(上下文,当前ListView加载的每一个列表所对应的布局文件,数据源) 2.适配器加载数据源
  24.          * 3.视图(ListView)加载适配器
  25.          */
  26.         String[] arr_data = { "慕课网1", "慕课网2", "慕课网3", "慕课网4", "慕课网5", "慕课网6" };
  27.         arr_adapter = new ArrayAdapter<String>(this,
  28.                 android.R.layout.simple_list_item_1, arr_data);

  29.         /*
  30.          * context:上下文 data: 数据源(List> data)
  31.          * 一个Map所组成的List集合 每一个Map都会去对应ListView列表中的一行
  32.          * 每一个Map(键-值对)中的键必须包含所有在from中所指定的键 resource:列表中的布局文件ID from:Map中的键名
  33.          * to:绑定数据视图中的ID,与from成对应关系
  34.          */
  35.         simp_adapter = new SimpleAdapter(this, getData(), R.layout.item,
  36.                 new String[] { "pic", "text" }, new int[] { R.id.id_pic,
  37.                         R.id.id_text });
  38.         // listView.setAdapter(arr_adapter);
  39.         listView.setAdapter(simp_adapter);
  40.     }

  41.     private List<Map<String, Object>> getData() {
  42.         for (int i = 0; i < 20; i++) {
  43.             Map<String, Object> map = new HashMap<String, Object>();
  44.             map.put("pic", R.drawable.ic_launcher);
  45.             map.put("text", "慕课网" + i);
  46.             dataList.add(map);
  47.         }
  48.         return dataList;
  49.     }
  50. }

阅读(178) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~