안드로이드 개발 질문/답변
(글 수 45,052)
GridView의 어뎁터를 CustomBaseAdapter로 하고 싶은데요.
실험을 해보니..
BaseAdapter에서 getCount함수를 1이상 주어지게 되면
getitemid가 6번불러지더라구요.
혹시 왜 6번이나 이걸 불러지게 되는지 아시는 분
(참고로 getCount함수의 주어지는 숫자 상관없이 무조건 6번 불러졌었습니다.)
디버그 로그파일은 파일첨부하였습니다.
실험을 해보니..
BaseAdapter에서 getCount함수를 1이상 주어지게 되면
getitemid가 6번불러지더라구요.
혹시 왜 6번이나 이걸 불러지게 되는지 아시는 분
(참고로 getCount함수의 주어지는 숫자 상관없이 무조건 6번 불러졌었습니다.)
Main.java
package com.exbaseadapter;
import android.app.Activity;
import android.os.Bundle;
import android.widget.GridView;
public class Main extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
GridView gridview = (GridView)findViewById(R.id.GridView01);
CustomBaseAdapter adapter = new CustomBaseAdapter(this);
gridview.setAdapter(adapter);
}
}CustomBaseAdapter.java
package com.exbaseadapter;
import android.content.Context;
import android.util.Log;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;
public class CustomBaseAdapter extends BaseAdapter {
Context mContext;
public CustomBaseAdapter(Context mContext) {
super();
// TODO Auto-generated constructor stub
this.mContext = mContext;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return 1;
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return null;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
Log.i("DEBUG_TAG","id : "+position);
return 0;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
TextView text = new TextView(mContext);
text.setText("id"+position);
return text;
}
}
디버그 로그파일은 파일첨부하였습니다.
안드로이드 개발자 입니다.
많은 정보 공유 했으면 좋겠습니다^^




그리드뷰를 사용해서 sdcard에 있는 이미지를 리턴하거나 하면 그 이미지의 갯수 만큼 리턴이 될 겁니다.