2011-03-26 81 views
0

嘿,你好嗎?我爲我的應用程序設置了一個圖庫視圖,我想從我的SD卡上的特定圖像文件夾中加載此視圖中的圖像。有人可以幫助我,因爲我搜索了很多,沒有提供的解決方案工作。Android,將特定文件夾中的圖像加載到圖庫視圖

我已經成功地將RES/DRAWABLE文件夾中的圖像加載到我的圖庫視圖中,但從未成功完成原始計劃。

這是imageadapter類別I其中i從RES加載圖像/文件夾繪製

public class ImageAdapter extends BaseAdapter 
{ 

     public ImageAdapter(Context c) 
     { 
      mContext = c; 
     } 

     public int getCount() 
     { 
      return mThumbIds.length; 
     } 

     public Object getItem(int position) 
     { 
      return position; 
     } 

     public long getItemId(int position) 
     { 
      return position; 
     } 

     public View getView(int position, View convertView, ViewGroup parent) 
     { 
      ImageView imageView; 
      if (convertView == null) 
      { 
       imageView = new ImageView(mContext); 
       imageView.setLayoutParams(new Gallery.LayoutParams(100, 100)); 
       imageView.setAdjustViewBounds(false); 
       imageView.setScaleType(ImageView.ScaleType.CENTER_CROP); 
       imageView.setPadding(18, 18, 18, 18); 
      } 
      else 
      { 
       imageView = (ImageView) convertView; 
      } 

      imageView.setImageResource(mThumbIds[position]); 

      return imageView; 
     } 

     private Context mContext; 

     private Integer[] mThumbIds = 
     { 
       R.drawable.image_1, 
       R.drawable.image_2, 
       R.drawable.image_3, 
       R.drawable.image_4 
     }; 
} 

回答

1

Here被我用來做你想要什麼的教程。如果它沒有幫助,我可以發佈我用來抓取直接存儲在設備(而非SD卡)上的圖片的代碼。

+0

heyy謝謝,我剛剛來到這裏說我設法解決它,看起來就像這個指南討論它的方式幾乎一樣...我使用了fileinputstream和bufferedinputstream,我得到了目錄中所有文件的列表,讀入fileinputstream並將其放入緩衝區,然後創建一個位圖並將其添加到位圖的數組列表中。謝謝 – aminet91 2011-03-26 21:42:41

+0

現在好了我有一個新的問題,我不能加載超過500kb的圖像,任何解決方案?我的應用程序崩潰 – aminet91 2011-03-26 21:52:12

+0

最有可能 - 你有OutOfMemoryError。沒有爲應用程序提供如此巨大的內存量,Bitmaps也不會自動釋放 - 您應該使用Bitmap.recycle()手動刪除它們。您應該根據其可見性爲位圖添加加載/卸載功能。 – OleGG 2012-02-11 17:22:25

相關問題