我有一个大问题,我尝试调试了很长时间,但我无法得到错误。
我有一个 Listview 并用图片加载它,路径保存在数据库中。
一切正常,但我有一个问题: 如果我有 4 个项目。前两张有图,后两张没有。所以列表中的最后一项总是有最后一项有图片的图片,我不知道为什么。我查看了数据库中是否可能有最后一个元素的路径,但它是空的。
有我的代码:
SimpleCursorAdapter adapter;
adapter = new SimpleCursorAdapter(this, R.layout.my_listlayout,
MainController.getInstance().getMyCursor(db),
new String[] {"F1", "F2", "F3", "F4"},
new int[] {R.id.imageViewF1, R.id.textViewF2, R.id.textViewF3, R.id.textViewF4}, 0);
adapter.setViewBinder(new ViewBinder() {
public boolean setViewValue(View view, Cursor cursor, int columnIndex) {
if (columnIndex == 1) {
ImageView imageView = (ImageView) view;
String Pic = cursor.getString(1);
if (Pic != null) {
// load the picture in the view
imageView.setImageDrawable(...);
}
return true;
}
if (columnIndex == 2) {
//..
}
if (columnIndex == 3) {
//..
}
if (columnIndex == 4) {
//..
}
return false;
}
});
ListView view = (ListView)findViewById(R.id.listViewFirst);
view.setAdapter(adapter);
也许我在适配器中做错了什么?