列表视图与图像和文字
问题描述:
我正在尝试做一个列表,显示一个图像和描述图像的简单文本。 在我的互联网搜索中,我发现了很多方法来做到这一点。有些人使用ArrayAdapter,其他人使用SimpleCursorAdapter。我注意到的一件事,许多人正在创建从ListActivity继承的类,并在setListAdapter
方法中插入从Array或SimpleCursor适配器派生的其他类。 第一个问题:这是做这件事的最好方法吗?列表视图与图像和文字
我创建了一个带有ListView的LinearLayout。为了插入行,使用ImageView
和TextView
创建了另一个布局。第二个问题:这是正确的吗?
我很困惑创建这种类型的组件。这是做到这一点的正确方法吗?
答
是的,这是正确的,虽然你将需要使用一个CursorAdapter
代替SimpleCursorAdapter
,因为SimpleCursorAdapter
的一点是要填充行只有TextView
在里面。
你会对你的CursorAdapter
一个getView
方法扩展您排布局:
@Override
public View getView(int position, View convertView, ViewGroup parent) {
if (convertView == null) { // we don't have a recycled view
convertView = LayoutInflator.from(getContext()).inflate(
R.layout.row, parent, false);
}
// setup our row
TextView text = (TextView) convertView.findViewById(R.id.text_view);
text.setText(...);
ImageView image = (ImageView) convertView.findViewById(R.id.image_view);
image.setImageBitmap(...);
return convertView;
}
当你设置你的意见的文字和图片,您可以像使用getItem
适配器方法来访问底层你需要的数据。