ListView介绍与实例

ListView介绍与实例

   listView主要包括两方面:1定义adapter增加并显示数据 2定义监听器(单击监听器/选择监听器)

   在ActivityManifest.xml里的主Activity里定义: //说明这个Activity是一个主Activity
   <intent-filter>
 <action android:name="android.intent.action.MAIN" />
 <category android:name="android.intent.category.LAUNCHER" />
   </intent-filter>
(1)
    istView = new ListView(this);
    listView.setAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_single_choice, data)); 
    listView.setItemsCanFocus(true);
    listView.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
    setContentView(listView);

ArrayAdapter:适用于数据时一般数组时
SimpleAdapter:适用于数据时一个list,而list中每一项又是一个Map时
构造方法:ArrayAdapter(Context context, int textViewResourceId, T[] objects)
构造方法:SimpleAdapter(Context context, List<? extends Map<String, ?>> data, int resource, String[] from, int[] to)
 resource代表Listview 中每个行框(item)的布局文件索引.就是那个.xml 中在R.Layout. # 那个整数.用这个.xml描述了每个Item的外表.
 from 是map中的键,该数组指明了要取map里的哪个值。因为map是个键值对,你传进去键值,系统会自动给你找到他的值.
 to 用来指明你从map里取的这写值如何和这个xml匹配,一般建议这个xml里有几个textview. 把这几个控建的ID传进去就好了.
  系统的layout两项可以用来显示获取的值
 android.R.id.text1 , android.R.id.text2

(2)为ListView设置单击监听器/选择监听器
 OnItemClickListener,实现其中的onItemClick(AdapterView<?> parent, View view, int position,long id)方法
   (AdapterView是ListView的父类)
    parent.getItemAtPosition(position) //获得和这一行绑定的数据
 OnItemSelectedListener 选择监听器


(3) ListActivity类
每一个ListActivity都有一个布局文件先关联
使用这个类,必须在xml里定义一个ListView,而且它的id必须为"@id/Android:list"
而且要设一个TextView.id为"@id/android:empty",用于在Adapter没有数据的时候显示
onListItemClick(ListView listView, View v, int position, long id)方法

你可能感兴趣的:(xml,android,ListView,list,String,layout)