
与列表相关的主要事件有两个、ItemSelected(列表项被选中时发生)、通过列表控件的setOnItemSelectedListener()实现监听、ItemClick(单击列表项时发生)、通过列表控件的setOnItemClickListener()实现监听、ItemLongClick(长按列表项时发生)、通过列表控件的setOnItemLongClickListener()实现监听,使用SimpleAdapter显示复杂数据需要设计好数据内容,不过视图如何复杂,列表的每一项内容由多个数据字段构成,在提供数据的时候,需要为每一个数据字段设计一个名字*字段名字和具体数据构成键值对,存放在map对象

表格布局图可以用来显示表格式数据或者像网页上的HTML表格一样制作排列整齐的界面。本教程讲述如何分别运用XML布局文件和通过代码来创建表格布局。理解布局对于良好的Android程序设计来说是非常重要的。在这个教程里,你将学到所以关于框架布局的知识,它主要用于在界面上以整洁的行和列方式组织用户界面控件或小工具。使用得当的话,表格布局图可以成为强大的范例,Android程序可以基于它们设计他们的界面和显示表格数据。
正如其字面的意思,表格布局就是一系列行和列组成的网格,并可以在这些网格的单元格中显示视图控件。从用户界面设计的角度看,一个TableLayout由一系列TableRow控件组成,每个TableRow控件对应表格里的一行。TableRow的内容由单元格中的视图控件组成。

TableLayout的外观通过一些附加的规则来管理。首先,整个表格的列数要与表中列数最多的行的列数一致。其次,列宽被定义为显示最大宽度内容的列的宽度。TableLayout的子行与子单元的layout_width属性总是设置为MATCH_PARENT――尽管它们可以在XML文件中定义,但其实际宽度是不能被覆盖的。TableLayout的单元格的layout_height也可以定义,但是TableRow的layout_height属性值总是WRAP_CONTENT。单元格可以跨列,但不能跨行。这个功能可以通过TableRow的子视图的layout_span属性来实现。一个单元格就是TableRow中的单个子视图。如果想得到一个更复杂的具有多视图单元格,就要用一个布局视图来封装其它的视图。
也就是说,有些规则可以被修改。列可以被标识为可拉伸的,这意味其着宽度可以扩展到父容器的宽度。列也可以被标识成可压缩的,这意味着可以缩小其宽度使整个行能符合父容器所能提供的空间。你也可以合并一整列。如果想参阅有关表格布局的完整文档,请访问TableLayout类的Android SDK文档。用于XML资源中的相关XML属性在文献中也有定义,Android程序使用布局来定义用户界面,表格布局非常好地处理按行和列方式显示的视图数据和控件。合理使用表格布局可以使界面设计变得简单快捷。尽管如此,还要清楚表格式布局继承自线性布局,因而会有许多与线性布局一样的性能方面的局限。

