안드로이드 개발 질문/답변
(글 수 2,584)
안녕하세요.
리스트뷰를 통해 특정 데이터를 보여주려고 합니다.
BaseAdpater를 상속받은 CustomAdapter 를 만들어서 화면을 보여주도록 했는데
position값이 증가하지 않는건 왜 그런것인지 모르겠습니다ㅜㅜ
getCount() 의 리턴값은 3인데, position 값은 증가하지 않고 0이라고만 나와서
데이터가 여러 개 있어도 한개의 데이터만 보여집니다.
리스트뷰 관련 예제를 검색해도 눈이 나쁜것인지 제가 잘못한 점을 못 찾고 있네요.
소스는 아래와 같고, getView 에 로그를 찍어본 결과가
getCount() = 3, position=0 이었습니다. 당연히 1번만 실행되니 첫번째 것만 보여지구요.
제가 어떤 실수를 했는지 도움 부탁드립니다.
감사합니다.
private class DataAdapter extends BaseAdapter{ private ArrayList<DBData> mDataList; public DataAdapter(ArrayList<DBData> data){ mDataList = data; } public int getCount() { return mDataList.size(); } public DBData getItem(int pos) { return mDataList.get(pos); } public long getItemId(int pos) { return pos; } public View getView(int pos, View convertView, ViewGroup parent) { //생략 }
딱히 별 문제는 없어 보이는데, getView에서 잘못 뿌려 주는 것 같은데요..