Я пытаюсь прочитать данные из api, заполнить это в БД и показать его в виде списка. Я продолжаю получать из индекса, но я не уверен, почему. Книга - это простой книжный класс со строгим номером телефонаNo и строковым именем. Я могу получить данные. Я получаю правильный вывод, когда я печатаю данные, которые я получаю, но я продолжаю входить в проблемы, когда я пытаюсь вставить данные в базу данных и извлечь их.Индекс за пределами в android
List<Book> list = db.getAllBooks();
for(int i = 0; i<4; i++) {
thatName[i] = list.get(i).getName();
thatMobile[i] = list.get(i).getPhoneNo();
Log.d("List 1", thatName[i]);
Log.d("List 2", thatMobile[i]);
}
customListViewAdapter = new CustomListViewAdapter(getApplication(),thatName,thatMobile);
listView.setAdapter(customListViewAdapter);
};
}
DB
public List<Book> getAllBooks() {
List<Book> books = new LinkedList<Book>();
// 1. build the query
String query = "SELECT * FROM " + TABLE_BOOKS;
// 2. get reference to writable DB
SQLiteDatabase db = this.getWritableDatabase();
Cursor cursor = db.rawQuery(query, null);
// 3. go over each row, build book and add it to list
Book book = null;
if (cursor.moveToFirst()) {
do {
book = new Book();
book.setPhoneNo(cursor.getString(1));
book.setName(cursor.getString(0));
//book.setAuthor(cursor.getString(2));
// Add book to books
books.add(book);
} while (cursor.moveToNext());
}
Log.d("getAllBooks()", books.toString());
// return books
return books;
}
Опубликуйте LogCat пожалуйста – JpCrow
для (INT I = 0; я < 4; i ++) Возможно, у вас нет 4 книг в базе данных? – Alex