Я использую базу данных, получаю из нее курсор, а затем использую простой курсорный адаптер для заполнения списка. Кажется, я не могу понять, почему происходит сбой приложения при создании нового простого курсорного адаптера. Мой курсор содержится в одноэлементном объекте. У меня есть ссылка на него через переменную данных в этом классе.
String[] columns = new String[] {"item", "quantity", "days"};
int[] to = new int[] { R.id.nametext, R.id.quantitytext, R.id.dayslefttext};
SimpleCursorAdapter sCA = new SimpleCursorAdapter(this, R.layout.itemrow, data.listCursor, columns, to);
listView1.setAdapter(sCA);
Что делает simplecursoradapter с информацией, передаваемой ему в его конструкторе? Один из параметров в неправильном формате? Вот простой xml-файл для каждой строки, которую я использую, чтобы посмотреть, работает ли это:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="wrap_content">
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Loading Screen"
android:id="@+id/nametext"/>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Loading Screen"
android:id="@+id/quantitytext"/>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Loading Screen"
android:id="@+id/dayslefttext"/>
</LinearLayout>
Вот как я загружаю курсоры:
listCursor = myDataBase.query(ITEMS_TABLE, null, "location" +" = ?", new String[]{IN_SPECIAL_LIST}, null, null, "item");
Я не могу понять, в чем проблема. Я выполнил это через некоторую отладку, и проблема возникает, когда я создаю новый simplecursoradapter.