将图像添加到ListView
问题描述:
我已经从sqlite数据库填充了一个listview,并且工作正常,但我想要在图片旁边填充图片。将图像添加到ListView
所以此刻ListView显示了字符名称。如果该字段等于x设置图片x,我想获得另一个字段,否则如果该字段等于y,则显示图片y。
我可以使用当前实施添加图像吗?
listContent = (ListView) findViewById(R.id.contentlist);
mDbAdapter = new DbAdapter(this);
mDbAdapter.open();
Cursor cursor = mDbAdapter.fetchAll();
startManagingCursor(cursor);
String[] from = new String[] { DbAdapter.KEY_NAME };
int[] to = new int[] { R.id.text };
cursorAdapter = new SimpleCursorAdapter(this, R.layout.row, cursor, from, to);
listContent.setAdapter(cursorAdapter);
mDbAdapter.close();
而且继承人的XML
<ImageView
android:id="@+id/icon"
android:layout_gravity="left"
android:layout_width="50dp"
android:layout_height="50dp"
android:padding="5dp" />
<TextView
android:id="@+id/text"
android:text="Name"
android:paddingLeft="10dip"
android:layout_weight="0.5"
android:layout_gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="30dp"
android:padding="5dp" />
</LinearLayout>
答
从你不能绑定图像从和方法在构造使用视图的文档SimpleCursorAdapter。但是,通过扩展SimpleCursorAdapter并覆盖getViewBinder()以返回您自己的ViewBinder,您可以轻松完成要执行的操作。您的ViewBinder应该处理读取当前行并将文本绑定到视图以及图像。