2012-02-23 56 views
0

我已經採取了兩種不同的路徑圖像存儲在sdcard.I想要在gridview中顯示這兩個圖像。你可以幫我嗎?主要問題是,如果我使用整數類型arraylist並給出的ID圖像比我可以看到的圖像,但如果我使用字符串類型的ArrayList具有圖像路徑比如何顯示圖像。 我還評論過哪些地方要更換,請幫幫我?如何從arraylist中檢索圖像路徑並在gridview中顯示它們?

public class ImageAdapter extends BaseAdapter 
    { 
     private Context mContext; 

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

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

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

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

    // create a new ImageView for each item referenced by the Adapter 

    public View getView(int position, View convertView, ViewGroup parent) { 
     ImageView imageView; 
     if (convertView == null) { // if it's not recycled, initialize some attributes 
      imageView = new ImageView(mContext); 
      imageView.setLayoutParams(new GridView.LayoutParams(85, 85)); 
      imageView.setScaleType(ImageView.ScaleType.CENTER_CROP); 
      imageView.setPadding(8, 8, 8, 8); 
     } else { 
      imageView = (ImageView) convertView; 
     } 

//here i am getting problem tell me how to use path of image in arraylist 

    imageView.setImageResource(mThumbIds[position]); 
     return imageView; 
    } 

    // references to our images  
ArrayList<String> mThumbIds=new ArrayList<String>; 
mThumbIds.add("/mnt/sdcard/a.jpg"); 
mThumbIds.add("/mnt/sdcard/b.jpg"); 

回答

1

不能使用setImageResource()直接設置圖像路徑。請嘗試:

Bitmap myBitmap = BitmapFactory.decodeFile(mThumbIds[position]); 
imageview.setImageBitmap(myBitmap); 
相關問題