Because some methods of this ImageAdapter object receive a position as a parameter but at no time I pass it on and if I remove it marks the method error, apart also where I use the position is in getView but I take it as if it were a for, this publication I do it happens to know more about this object. ImageAdapter
public class ImageAdapter extends BaseAdapter {
private Context mContext;
private ArrayList<Bitmap> imagesList;
public ImageAdapter(Context context, ArrayList<Bitmap> imagesList){//recibe como parametros el Contexto y un ArrayList de Bitmaps
this.mContext = context;//se asgina valores
this.imagesList = imagesList;//se asgina valores
}//./constructor
@Override
public int getCount() {
return imagesList.size();//se obtiene el tamanio del array list
}
@Override
public Object getItem(int position) {//debe devolver el objeto real en la posición especificada
return imagesList.get(position);//obtenemos la posicion
}
@Override
public long getItemId(int position) {//debe devolver el ID de la fila del elemento, pero no es necesario aquí.
return 0;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ImageView imageView = new ImageView(mContext);
if (imagesList.size() > 0) {
imageView.setImageBitmap(imagesList.get(position));
}
//caracteristicas del ImageView
imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
imageView.setLayoutParams(new GridView.LayoutParams(150, 150));
return imageView;
}
} //./ class