1. 首先是MainActivity.java文件,如下:
package com.himi.lv1; import java.util.ArrayList; import java.util.List; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.ListView; import android.widget.Toast; import android.widget.AdapterView.OnItemClickListener; public class MainActivity extends Activity { private ListView lv ;//声明一个列表 private List<String> list ;//声明一个List容器 private ArrayAdapter<String> aa ; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main);//绑定静态页面,下面是设置静态页面。 lv = new ListView(this);//实例化列表 list = new ArrayList<String>();//实例化List //往容器中添加数据 list.add("Item1"); list.add("Item2"); list.add("Item3"); //实例适配器 //第一个参数:Context //第二个参数:ListView中每一行布局样式 //android.R.layout.simple_list_item_1:系统中每行只显示一行文字布局 //第三个参数:列表数据容器 aa = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,list); lv.setAdapter(aa);//将适配器数据映射ListView上 /* 为列表添加监听 *arg0:父类的View,这里是就是ListView *arg1:点击的Item的View,操作你的点击Item的句柄 *arg2:position:Item在是适配器中position,从0开始,按顺序排序的 *arg3:就是你点击的Item的id */ lv.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) { Toast.makeText(MainActivity.this, "当前选中列表项的下标为:"+arg2, Toast.LENGTH_SHORT).show(); } }); this.setContentView(lv);//由于这里是动态添加页面,前面只是设置我们要添加的页面,这里是则是添加,静态布局文件会被动态添加的布局覆盖掉 } }
2. 其次是main.xml文件,如下:
1 <?xml version="1.0" encoding="utf-8"?> 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 3 android:orientation="vertical" 4 android:layout_width="fill_parent" 5 android:layout_height="fill_parent" 6 > 7 <TextView 8 android:layout_width="fill_parent" 9 android:layout_height="wrap_content" 10 android:text="@string/hello" 11 /> 12 </LinearLayout>