제목으로 데이터베이스에서 내 데이터를 목록보기로 연결하는 데 문제가 있습니다. 문제는 어댑터가 반환되는 마지막 행만 설정한다는 것입니다. 데이터베이스 테이블의 행.안드로이드 : setListAdapter는 데이터베이스의 마지막 행만 설정합니다.
내가 달성하기 위해 노력하고 무엇의 예 :
표 동물 : 원숭이 개 타이거
화면에로만 타이거 표시됩니다 고양이.
데이터베이스에서 커서를 돌려 내 방법 : 목록보기
dbm = new MyDBManager(this);
dbm.open();
dbm.deleteAnimals();
dbm.populateDB();
// after populating, set the adapter..
myCursor = dbm.getAllAnimals();
String[] columns = new String[] {"animal_name"};
int[] to = new int[] {R.id.animal};
SimpleCursorAdapter mAdapter = new SimpleCursorAdapter(this, R.layout.row, myCursor, columns, to);
this.setListAdapter(mAdapter);
을
public Cursor retrieveAnimals(){
return = DB.query(ANIMAL_TABLE, new String[] {
KEY_ROWID,
KEY_ANIMALNAME,
},
null,
null,
null,
null,
null);
}
및 설정 I 예감 내 문제가 자동으로 이동된다는 점에서, 커서 위치에 자리 잡고 있습니다 마지막 행 어댑터를 설정할 때, 나는 내 문제에 대한 해결책을 찾으려고 노력했지만 행운이 없었다.
미리 제안 해 주셔서 감사합니다.
편집 : 방법이 retrieveAnimals()
에서 DB
public long populateDB(){
ContentValues initialValues = new ContentValues();
for(int i = 0; i < animalName.length; i++){
initialValues.put(KEY_ANIMALNAME, animalName[i]);
}
return DB.insert(ANIMAL_TABLE, null, initialValues);
}
'myCursor.getCount()'는 무엇을 반환합니까? – rajath