2012-02-23 1 views
0

J'ai pris les deux chemins d'images différents sont stockés dans sdcard.Je veux afficher les deux images dans gridview.Can vous s'il vous plaît aidez-moi? Le principal problème est que si j'utilise arraylist de type entier et donnant les ID de image que je peux voir l'image mais si j'utilise l'arrayliste de type chaîne qui ont le chemin de l'image que comment montrer l'image. J'ai également commenté sur la ligne où changer, s'il vous plaît aidez-moi ??Comment récupérer l'imagepath d'arraylist et les afficher dans 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"); 

Répondre

1

Vous ne pouvez pas définir directement le chemin de l'image avec setImageResource(). Essayez plutôt:

Bitmap myBitmap = BitmapFactory.decodeFile(mThumbIds[position]); 
imageview.setImageBitmap(myBitmap); 
Questions connexes