代码改变世界

ListView包含TextView和ImageView

2011-03-25 19:37  shy.ang  阅读(2045)  评论(0编辑  收藏  举报

在ListView的Item中显示图片和文本,主要步骤:

  首先建立ImageText 实体类(也可以不用)

  然后建立ImageTextView 视图类 extends linearLayout     里面包含ImageView和TextView,分别包含ImageText对象中的Image和Text。在构造函数中将其中Imageview填充上图片,TextView填充上文字,还要将这两个添加进ImageTextView视图中:addView(),并对该视图进行布局。

  接着是建立 ViewAdapter extends BaseAdapter 适配器   适配器中有ArrayList<ImageText>,即ImageText对象数组

      其中 getView( Context context,View convertView,ViewGroup parent)

        {

          如果covertView为空,则创建ImageTextView类对象;

          否则

          {  ImageTextView 对象 = (ImageTextView)convertView;//重用convertView

            再添加分别是ArrayList<ImageText>对应位置的Image和Text

          }

        }

      getView:获得一个视图,它显示数据集中特定位置的数据。你可以人工生成一个视图,或者从一个XML布局文件中读取(inflate),当这个视图被读取时,它的外层视图将应用默认的布局参数除非你使用inflate(...)来确定根视图并阻止和根的联系。

            参数:position,欲显示数据在数据集中位置

               convertView,如果可能,使用可重用的旧视图。必须在用之前检查这个视图是非空的,并且有适当的类型。如果不能用它来显示正确的数据,这个getView方法可以重新生成一个新的视图

               parent,这个视图将要附着的父视图