AdapterView及其子类之二:使用ListActivity及ArrayAdapter创建列表

时间:2023-03-09 19:43:41
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();
} }