1. 程式人生 > >AdapterView及其子類之二:使用ListActivity及ArrayAdapter建立列表

AdapterView及其子類之二:使用ListActivity及ArrayAdapter建立列表

見歸檔專案ListActivityDemo.zip。

基本步驟如下:

1、建立一個TextView,用於指定每一個ListView的格式

<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/list"
    android:layout_width="match_parent"
    android:layout_height="20dp" 
    android:background="#0000ff">

</TextView>

2、建立主類
package com.ljh.listactivitydemo;

import android.app.ListActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;

//(1)繼承ListActivity
public class MainActivity extends ListActivity {

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);

		// (2)建立要顯示的文字內容
		String[] arr = { "java", "c/c++", "python", "ruby" };
		// (3)建立ArrayAdapter,其中第二個引數resource:The resource ID for a layout file
		// containing a TextView to use when instantiating views.是要以一個layout作為
		// 引數,且此layout需要包含textview。
		ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
				R.layout.list, arr);
		// (4)為ListActivity設定adapter.
		setListAdapter(adapter);
	}
	
	//定義當某個選項被點選時的操作。
	@Override
	protected void onListItemClick(ListView l, View v, int position, long id) {
		super.onListItemClick(l, v, position, id);
		
		Toast.makeText(this, position+" item is clicked.", Toast.LENGTH_LONG).show();
	}

}