Android软件开发-ListView(1)

在android开发中ListView是比较常用的组件,它以列表的形式展示具体内容,并且能够根据数据的长度自适应显示。

main.xml布局文件:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout android:id="@+id/LinearLayout01"
    android:layout_width="fill_parent" android:layout_height="fill_parent"
    xmlns:android="http://schemas.android.com/apk/res/android">
    <ListView android:layout_width="wrap_content"
        android:layout_height="wrap_content" 
        android:id="@+id/MyListView">
    </ListView>
</LinearLayout>

my_listitem.xml布局文件:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout android:layout_width="fill_parent"
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" 
    android:layout_height="wrap_content"
    android:id="@+id/myListItem" 
    android:paddingBottom="3dip"
    android:paddingLeft="10dip">
    <TextView android:layout_height="wrap_content"
        android:layout_width="fill_parent" 
        android:id="@+id/itemTitle"
        android:textSize="20dip">
    </TextView>
    <TextView android:layout_height="wrap_content"
        android:layout_width="fill_parent" 
        android:id="@+id/itemText">
    </TextView>
</LinearLayout>

LsActivity类:

package com.ljq.ls;

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

import android.app.Activity;
import android.os.Bundle;
import android.widget.ListView;
import android.widget.SimpleAdapter;

public class LsActivity extends Activity {
    private ListView list = null;
    
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        list = (ListView) findViewById(R.id.MyListView);
        
        //组织数据源
        List<HashMap<String, String>> mylist = new ArrayList<HashMap<String, String>>();
        for(int i=0;i<10;i++) {
            HashMap<String, String> map = new HashMap<String, String>();
            map.put("itemTitle", "This is Title");
            map.put("itemText", "This is text");
            mylist.add(map);
        }
        
        //配置适配器
        SimpleAdapter adapter = new SimpleAdapter(this, 
                                                  mylist,//数据源 
                                                  R.layout.my_listitem,//显示布局
                                                  new String[] {"itemTitle", "itemText"}, //数据源的属性字段
                                                  new int[] {R.id.itemTitle,R.id.itemText}); //布局里的控件id
        //添加并且显示
        list.setAdapter(adapter);
    }
}

运行效果:

posted @ 2014-06-14 05:44  激情为梦想而生  阅读(137)  评论(0编辑  收藏  举报