在Android Studio中ListView的使用方法2-2_棉猴的博客-CSDN博客
中提到,使用ArrayAdapter类可以将数据与适配器进行绑定,与该适配器绑定的还有一个名为“android.R.layout.simple_list_item_1”的布局文件,该布局文件决定了ListView的每一项中只有一个文本框。而对于如图1所示的ListView的每一项中有多个控件的情况,需要通过自定义Adapter类来实现。
图1 ListView项中包含多个控件
从图1中可以看出,ListView项中包含了两个信息,一个是足球俱乐部的队徽,另外一个是足球俱乐部的名称。因此,首先我们需要创建一个足球俱乐部的类FootballClub,来处理这两个信息。
1 自定义类FootballClub
为项目添加一个名为“FootballClub”的类,并定义如图2所示的代码。
图2 FootballClub类的代码
其中,图2①定义了FootballClub类的两个成员变量,flag表示队徽资源的ID,name表示球队名字;图2②定义了FootballClub类的构造方法,通过构造方法可以为flag和name赋值;图2③定义了访问flag和name的成员方法。
2 定义布局文件
从图1中可以看出,ListView的每一项的布局中包含一张图片和一个文本框,因此,需要定义一个新的布局文件实现该功能。
2.1 修改“orientation”属性
在项目中添加“footballclub_list_item”的线性布局文件,首先将该现象布局的“orientation”属性设置为水平,即“Horizontal”,如图3所示。
图3 修改布局的“orientation”属性
2.2 添加ImageView控件
通过ImageView来显示图1中足球俱乐部的队徽,在布局文件中添加该控件的代码如图4所示。
图4 ImageView控件
从图4中可以看出,ImageView控件的ID是“football_club_flag”。
2.3 添加TextView控件
通过TextView控件来显示图1中足球俱乐部的名字,在布局文件中添加该控件的代码如图5所示。
图5 TextView控件
从图5中可以看出,TextView控件的ID是“football_club_name”。