0
你好我得到一个OutOfBoundsExpection:索引0请求,大小为0.我的数据库以前工作。Android的SQLite:光标索引出界
下面是代码片段:
MainActivity.db = new DatabaseHandler(ncontext);
MainActivity.db.addPokemon(new Pokedex(0, "Bulbasaur", "001", "Grass/Poison", "Lv 5",1));
//Crashes:
Log.d(tag,"This is drawable: "+ MainActivity.db.getPokemon(0,1).getPokemonImage());
//DataBase class
SQLiteDatabase db = this.getReadableDatabase();
Cursor cursor = db.query(TABLE_POKEMON, columns, KEY_ID + "=?" + " AND "
+ KEY_POKEMON_IMAGE + "=?", new String[] { String.valueOf(id),
String.valueOf(poke_image) }, null, null, null, null);
if ((cursor != null && cursor.moveToFirst())){
cursor.moveToNext();
cursor.close();
}
Log.d(Tag, "pre pokedex fetch");
Pokedex pokemon;
//CRASHES
Log.d("Database","1: " + Integer.parseInt(cursor.getString(0)));
// return pokemon
pokemon = new Pokedex(Integer.parseInt(cursor.getString(0)),
cursor.getString(1), cursor.getString(2), cursor.getString(3),
cursor.getString(4), Integer.parseInt(cursor.getString(5)));
Log.d(Tag, "getPokemon done");
return pokemon;
任何想法是怎么回事?
您为什么关闭''Cursor'如果纠正你
if
条件((光标= NULL && cursor.moveToFirst())!){ cursor.moveToNext(); cursor.close(); }' – SathishKumar 2014-12-05 03:44:47