안드로이드 개발 질문/답변
(글 수 45,052)
final Gallery g = (Gallery) this.findViewById(R.id.gallery);
하여
g.setAdapter(new ImageAdapter(c , 1));
ImageAdapter로 리소스에 있는 이미지를 뿌려 주고 있는데
이게 스크롤이 되잖아요~
그때 그 스크롤이 맨 마지막 부분에 도착 했는지
아니면 스크롤의 위치가 맨처음인지 알수 있을까요?
getview의 position으로는 정확 하게 안나오더라구요 0 1 2 3이 잘안나오고
맨앞으로 갔을때 어쩔땐 0 어쩔땐1이 나와서 position값으로는 현재 위치가 맨처음인지 끝인지
알아내기가 힘들어 이렇게 질문 올립니다
어떻게하면 맨 처음에 도달했는지 마지막에 도달했는지 알수있을까요??
class ImageAdapter extends BaseAdapter {
private int bt=1;
private Context mContext;
private int[] mImageIds=null;
public ImageAdapter(Context c , int btn) {
this.mContext = c;
this.bt=btn;
mImageIds =new int[] {
R.drawable.ma_1,
R.drawable.ma_2,
R.drawable.ma_3,
R.drawable.ma_4
};
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
ImageView imageView;
if(convertView == null) {
imageView = new ImageView(mContext);
} else {
imageView = (ImageView) convertView;
}
imageView.setImageResource(mImageIds[position]);
imageView.setScaleType(ImageView.ScaleType.FIT_XY);
imageView.setLayoutParams(new Gallery.LayoutParams(240, 240));
return imageView;
}
}




mImageIds 의 크기와 비교하면 되지 않을까요?imageView.setTag(position) 을 쓰셔서 position값을 getTag()로 가져다 비교하는 방식으로요.
포지션값이 틀리다는 것은, BaseAdapter 를 쓰셨으면 position 값이 mImageIds 의 순서와 같을 텐데요.
같아야 맞습니다.