【发布时间】:2016-02-08 15:42:34
【问题描述】:
我正在使用 Android Studio。在我的 ListView 上显示 SQLite 数据库中的数据时遇到问题。 这是一种从 SQLite 获取数据的方法(效果很好,已检查)
public List<Terminy> getAllItems(){
List<Terminy> itemList = new ArrayList<Terminy>();
String selectQuery = "SELECT id,data FROM Terminy WHERE Wolny = 1";
SQLiteDatabase database = this.getWritableDatabase();
Cursor cursor = database.rawQuery(selectQuery, null);
if(cursor.moveToFirst()){
do{
Terminy termin = new Terminy();
termin.setId2(Integer.parseInt(cursor.getString(0)));
termin.setData(cursor.getString(1));
itemList.add(termin);
}while(cursor.moveToNext());
}
cursor.close();
return itemList;
}
还有将数据放入ListView的方法
public void ButtonLista(View v)
{
ArrayAdapter<Terminy> adapter;
ArrayList<Terminy> lista;
DatabaseHelper helper = new DatabaseHelper(this);
ListView listView = (ListView) findViewById(R.id.listView);
lista = new ArrayList<>(helper.getAllItems());
adapter = new ArrayAdapter<Terminy>(this,R.layout.activity_panel_uzytkownik, lista);
listView.setAdapter(adapter);
adapter.notifyDataSetChanged();
LogCat 错误
com.example.czou.proojekt E/ArrayAdapter: You must supply a resource ID for a TextView com.example.czou.proojekt D/AndroidRuntime: Shutting down VM com.example.czou.proojekt W/art: Suspending all threads took: 02-08 17:47:59.352 1779-1779/com.example.czou.proojekt E/AndroidRuntime: FATAL EXCEPTION: main Process: com.example.czou.proojekt, PID: 1779 java.lang.IllegalStateException: ArrayAdapter requires the resource ID to be a TextView
有人可以帮我吗?到目前为止我已经阅读了很多教程,但仍然不知道如何解决我的问题:(
【问题讨论】:
-
有什么问题?
-
我的方法不起作用。当我单击按钮在 ListView 上显示数据时,我的应用程序停止并退出。
-
你介意分享异常/崩溃的堆栈跟踪(又名logcat)
-
没错。不幸的是,应用程序已停止错误消息
-
@Czunio 请张贴你的 logcat
标签: android database sqlite listview