Images no SimpleCursorAdapter
Estou tentando usar umSimpleCursorAdapter
com umViewBinder
para obter uma imagem do banco de dados e colocá-la no meuListView
visualização do item. Aqui está o meu código:
private void setUpViews() {
mNewsView = (ListView) findViewById(R.id.news_list);
Cursor cursor = getNews();
SimpleCursorAdapter curAdapter = new SimpleCursorAdapter(
getApplicationContext(), R.layout.cursor_item, cursor,
new String[] { "title", "content", "image" },
new int[] { R.id.cursor_title, R.id.cursor_content,
R.id.news_image });
ViewBinder viewBinder = new ViewBinder() {
public boolean setViewValue(View view, Cursor cursor,
int columnIndex) {
ImageView image = (ImageView) view;
byte[] byteArr = cursor.getBlob(columnIndex);
image.setImageBitmap(BitmapFactory.decodeByteArray(byteArr, 0, byteArr.length));
return true;
}
};
ImageView image = (ImageView) findViewById(R.id.news_image);
viewBinder.setViewValue(image, cursor, cursor.getColumnIndex("image"));
curAdapter.setViewBinder(viewBinder);
mNewsView.setAdapter(curAdapter);
}
Estou recebendo um:
android.database.CursorIndexOutOfBoundsException: Index -1 requested, with a size of 60
enquanto executabyte[] byteArr = cursor.getBlob(columnIndex);
. Alguém tem uma idéia do que estou fazendo de errado?