fangyong2006 发表于 2013-1-30 04:03:07

ch09 Android ListView

<div style="" class="Section0">--------------------------------------------AndroidManifest.xml-------------------------------
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.ch09"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="10"
        android:targetSdkVersion="15" />

    <uses-permission android:name="android.permission.READ_CONTACTS" />

    <application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name=".MainActivity"
            android:label="@string/title_activity_main" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>
--------------------------------------------Layout list_items.xml------------------------------
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/RelativeLayout1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/title"
        android:gravity="top"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:text="title" />

    <TextView
        android:layout_below="@id/title"
        android:id="@+id/content"
        android:layout_width="300sp"
        android:layout_height="wrap_content"
        android:text="content1" />


    <ImageView
        android:id="@+id/image"
        android:layout_toRightOf="@id/content"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/ic_launcher" />

</RelativeLayout>
--------------------------------------------MainActivity.java-----------------------------------
package com.ch09;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import android.app.Activity;
import android.database.Cursor;
import android.os.Bundle;
import android.provider.Contacts.People;
import android.widget.ListView;
import android.widget.SimpleCursorAdapter;

/**
 * 
 * 项目名称:com.ch09    
 * 类名称:MainActivity    
 * 类描述:  ListView、ArrayAdapter、SimpleAdapter、SimpleCursorAdapter
 * 创建人:fy   
 * 创建时间:2012-11-13 下午6:53:15   
 * Copyright (c) 方勇-版权所有
 */
public class MainActivity extends Activity {

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
init();
}

/* 初始化操作 */
private void init() {
/* 实例化listView */
ListView listView = new ListView(this);
/* 填充数据 */
// listView.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, getData()));

// listView.setAdapter(new SimpleAdapter(this, (List<? extends Map<String, ?>>) getMapData(), R.layout.list_items,
// new String[] { "title", "content", "img" }, new int[] { R.id.title, R.id.content, R.id.image }));

listView.setAdapter(new SimpleCursorAdapter(this, android.R.layout.simple_list_item_2, getCursorData(),
new String[] { People.NAME, People.NUMBER }, new int[] { android.R.id.text1, android.R.id.text2 }));

setContentView(listView);
}

/* 单个数据集合 */
private List<String> getData() {
List<String> list = new ArrayList<String>();
for (int i = 0; i < 5; i++) {
list.add("test_" + i);
}
return list;
}

/* 多个数据集合 */
private List<Map> getMapData() {
List<Map> list = new ArrayList<Map>();
for (int i = 0; i < 5; i++) {
Map<String, Object> map = new HashMap<String, Object>();
map.put("title", "title_" + i);
map.put("content", "content_" + i + ".............................");
map.put("img", R.drawable.ic_launcher);
list.add(map);
}
return list;
}

/* 动态数据 */
private Cursor getCursorData() {
Cursor cursor = getContentResolver().query(People.CONTENT_URI, null, null, null, null);
startManagingCursor(cursor);
return cursor;
}
}
--------------------------------------------效果图 ArrayAdapter--------------------------------
http://dl.iteye.com/upload/attachment/0076/5425/0dae1786-e07a-3e6c-90cd-842a9d5cd866.png
--------------------------------------------效果图 SimpleAdapter、----------------------------
http://dl.iteye.com/upload/attachment/0076/5427/561668a1-05e2-37d2-8daa-b103eaf3162f.png
--------------------------------------------效果图 SimpleCursorAdapter-----------------------
http://dl.iteye.com/upload/attachment/0076/5429/7d6b245e-5ca0-31a5-abfc-fb40bbf2a9e0.png
http://dl.iteye.com/upload/attachment/0076/5431/9383f5f8-798f-39ae-b05a-ca90d2518573.png
http://dl.iteye.com/upload/attachment/0076/5433/f6e07d02-a6ac-3f13-9c34-46ee0b61ef3b.png
页: [1]
查看完整版本: ch09 Android ListView