簡體   English   中英

來自SQLite的Android Studio ListView

[英]Android Studio ListView from SQLite

我正在使用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 

有人可以幫我嗎? 到目前為止,我已經閱讀了許多教程,但仍然不知道如何解決我的問題:(

看看這個答案

或者嘗試使用單獨的Adapter (對extends ArrayAdapter )來完全控制您的布局及其每一部分。

這是有關使用ArrayAdapter 鏈接的教程

關於如何將SQLIte與ListView 鏈接一起使用的另一篇教程

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.example.czou.proojekt.PanelUzytkownik">

<Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="New Button"
    android:id="@+id/button"
    android:layout_alignParentBottom="true"
    android:onClick="ButtonLista" />

<ListView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/listView"
    android:layout_alignParentTop="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
    android:layout_marginBottom="80dp" />

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM