0

SQLite データベースに BLOB データとして保存されている画像を、リスト アクティビティの行で使用される Imageview に取得しようとしています。

これは、通常のテキスト データを取得するために使用する 2 つの方法のコードです。

private void fillData() {
// TODO Auto-generated method stub

String[] from = new String[] { BorrowMeTable.COLUMN_NAME, BorrowMeTable.COLUMN_DATE };      

int[] to = new int[] { R.id.people_list_name, R.id.people_list_borrowed };

getLoaderManager().initLoader(0, null, this);
adapter = new SimpleCursorAdapter(this, R.layout.people_row, null, from,
        to, 0);

setListAdapter(adapter);

}

// -----------------------------------------------------------


@Override
public Loader<Cursor> onCreateLoader(int id, Bundle args) {

    BorrowMeContentProvider.distinctSwitch = true;

    String[] projection = { BorrowMeTable.COLUMN_ID, BorrowMeTable.COLUMN_NAME, BorrowMeTable.COLUMN_DATE };
    CursorLoader cursorLoader = new CursorLoader(this,
        BorrowMeContentProvider.CONTENT_URI, projection, null, null, null);
    return cursorLoader;
}

imageView (R.id.pic_of_image) にロードしたい別の列 BorrowMeTable.COLUMN_IMAGE があります。文字列に変換できないため、プロジェクションに追加できません。単一のカーソルを使用してプルするには、次のコードを使用します。

byte[] imageByteArray = databaseCursor.getBlob(databaseCursor
     .getColumnIndex(BorrowMeTable.COLUMN_IMAGE));
ByteArrayInputStream imageStream = new ByteArrayInputStream(
     imageByteArray);
bmp = BitmapFactory.decodeStream(imageStream);
     window.setImageBitmap(bmp);

プログラムの別の部分で行ったように。これをどのように機能させるかについて、誰か助けてもらえますか?

ありがとう!

4

1 に答える 1