Я новичок в программировании на Java / разработке под Android - но я работал над несколькими примерами и пытался создать приложение "смешивай и сопоставляй" с тремя видами прокрутки.
Я создал относительный макет с 3 видами галереи и определил 3 массива для хранения списка изображений.
Моя проблема в том, что я не могу заставить ImageAdapter установить правильный ресурс изображения для каждого вида галереи (он дублирует одни и те же изображения во всех 3 галереях).
Если я могу просто опубликовать соответствующие разделы кода:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.main);
Gallery gTop = (Gallery) findViewById(R.id.gallery_top);
Gallery gMid = (Gallery) findViewById(R.id.gallery_mid);
Gallery gEnd = (Gallery) findViewById(R.id.gallery_end);
gTop.setAdapter(new ImageAdapter(this));
gMid.setAdapter(new ImageAdapter(this));
gEnd.setAdapter(new ImageAdapter(this));
}
Затем другой класс устанавливает ресурсы (жестко закодированные):
public View getView(int position, View convertView, ViewGroup parent) {
ImageView i = new ImageView(mContext);
i.setImageResource(mEndThumbIds[position]);
i.setAdjustViewBounds(true);
i.setLayoutParams(new Gallery.LayoutParams(
LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT)
);
return i;
}
Как я могу удалить эту жестко закодированную ссылку и проверить, какой объект вызывает getView, и соответственно установить ресурсы изображения?
Спасибо, Алекс