Я начал с примера кода Google для Grid View, но как выбрать, какие изображения будут отображаться?Скажем, однажды я хотел, чтобы eq1 и eq4 показывались, но в другой раз я хотел, чтобы eq3, eq 6 и eq12 появились, что мне нужно сделать с кодом?Массив Integer содержит некоторые целые числа из другой части приложения, которые не всегда будут одинаковыми, и я пытаюсь привести их в соответствие с тем, какие изображения находятся в Grid.
public class ImageAdapter extends BaseAdapter {
private Context mContext;
private int length;
private Integer[] choices;
public ImageAdapter(Context c, int inLength, Integer[] inChoices) {
mContext = c;
length = inLength;
choices = inChoices;
}
public int getCount() {
return 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(200, 50));
imageView.setScaleType(ImageView.ScaleType.CENTER_INSIDE);
imageView.setPadding(8, 8, 8, 8);
} else {
imageView = (ImageView) convertView;
}
imageView.setImageResource(mThumbIds[position]);
return imageView;
}
// references to our images
private Integer[] mThumbIds = {
R.drawable.eq1, R.drawable.eq2,
R.drawable.eq3, R.drawable.eq4,
R.drawable.eq5, R.drawable.eq6,
R.drawable.eq7, R.drawable.eq8,
R.drawable.eq9, R.drawable.eq10,
R.drawable.eq11, R.drawable.eq12,
R.drawable.eq13, R.drawable.eq14,
R.drawable.eq15, R.drawable.eq16,
R.drawable.eq17, R.drawable.eq18,
R.drawable.eq19, R.drawable.eq20,
R.drawable.eq21, R.drawable.eq22
};
}