2012-02-20 14 views
1

sqliteデータベースの画像をgridviewまたはギャラリービューに表示する必要があります。
これは、単一のビューで表示するためのコードです: blobとしてsqliteに画像を保存したAndroidギャラリービュー

mMain = (ImageView) findViewById(R.id.ivMain); 
byte[] blob = imgs.getBytes(); //there is a method that will return the bytes from the database 
ByteArrayInputStream inputStream = new ByteArrayInputStream(blob); 
Bitmap bitmap = BitmapFactory.decodeStream(inputStream); 
mMain.setImageBitmap(bitmap); 

私は、グリッドビューのためのAndroidのチュートリアルを持っていますが、それはファイル

// references to our images 
private Integer[] mThumbIds = { 
R.drawable.sample_2, R.drawable.sample_3 
... } 

から画像を取得するには、移入する方法がありますsqliteデータベースからのgridview?

UPDATE:
イムImageAdapterを使用してはアンドロイドチュートリアルで提供します。

ArrayList<byte[]> image_arr = new ArrayList<byte[]>(); 
//loop through all images on sqlite 
for(int l = 0 ;l< db.getAllImages().size(); l++){ 
    Image imgs = db.getAllImages().get(l); 
    byte[] blob = imgs.getBytes(); 
    image_arr.add(blob); 

    ByteArrayInputStream inputStream = new ByteArrayInputStream(blob); 
    Bitmap bitmap = BitmapFactory.decodeStream(inputStream); 
    // mMain.setImageBitmap(bitmap); 
} 
//TODO; find way to make the bitmap get to the ImageView 

Gallery gallery = (Gallery) findViewById(R.id.gallery); 
gallery.setAdapter(new ImageAdapter(this)); 

このコードは、主な活動に私が合格する方法を見つける必要がある。
http://developer.android.com/resources/tutorials/views/hello-gridview.html
私のコードは、このなり他のファイルにあるImageViewのリソース。

答えて

0
private void getDataAndPopulate() { 

    image = new ArrayList<byte[]>(); 
    caption = new ArrayList<String>(); 

    cursor=db.rawQuery("select * from NAME",null); 


    while (cursor.moveToNext()) { 

     byte[] temp_image = cursor.getBlob(2); 
     String temp_caption = cursor.getString(1); 
     String temp_id= cursor.getString(0); 
     image.add(temp_image); 
     caption.add(temp_caption); 
     id.add(temp_id); 
    } 
    String[] captionArray = (String[]) caption.toArray(
      new String[caption.size()]); 

    ItemsAdapter itemsAdapter = new ItemsAdapter(Item_show_grid.this, R.layout.item_grid,captionArray); 
    gv.setAdapter(itemsAdapter); 

} 
+0

すごく速い!私はすぐに確認します。フィードバックありがとうございました –

+0

ありがとう@aashutosh、ArrayList image = new ArrayList ();アイデアはバイト配列を処理するのに役立ちますが、これはItemsAdapterに渡されますが、現在サンプルアダプタを使用しているこのItemsAdapterの詳細を説明してください:http://developer.android.com/resources/tutorials/views/hello-gridview .html –

関連する問題