【发布时间】:2010-01-07 08:46:22
【问题描述】:
我正在使用 ListView 来显示项目。目前我正在向它传递一个字符串数组。但是我想再传递一个数组并将其项目与第一个数组的项目一起显示;也就是说,不知何故有两行文本。
我该怎么做?
【问题讨论】:
我正在使用 ListView 来显示项目。目前我正在向它传递一个字符串数组。但是我想再传递一个数组并将其项目与第一个数组的项目一起显示;也就是说,不知何故有两行文本。
我该怎么做?
【问题讨论】:
您还可以为您的列表制作一个自定义适配器,并使用自定义类作为该适配器的项目类型。像这样:
class CustomAdapter extends ArrayAdapter < RowData > {
...
@Override
public View getView(int position, View convertView, ViewGroup parent) {
...
}
}
class RowData {
String line1;
String line2
RowData(String l1, String l2){line1=l1;line2=l2;}
}
问候!
【讨论】:
由于这两个数组都包含要在列表视图的一行中显示的数据,IMO 认为它们以某种方式相关是合乎逻辑且公平的。
您可以创建一个名为 RowData 的类,并将 String(第一个数组的数据类型)和 Object(或第二个数组的数据类型)作为其成员。然后,您可以将 Rowdata 类型的数组传递给列表视图。
例如,如果您想将: String[] 和 Date[] 传递给 listView,您将通过
RowData[] 现在,其中 Rowdata 定义为:
class RowData{
String dataItem1;
Date dataItem2;
}
【讨论】:
使用表格或将各种数组的项格式化为新数组。
【讨论】: