【问题标题】:Data isn't selected from Database with Room数据不是从带有房间的数据库中选择的
【发布时间】:2019-05-21 19:26:31
【问题描述】:

我有以下代码:

private void onAddClick(){
        String title = mTitleEdit.getText().toString();
        String body = mBodyEdit.getText().toString();
        Note note = new Note();
        note.setTitle(title);
        note.setBody(body);
        noteDao.insertNote(note);
        notes = noteDao.getNotes();
        adapter = new RecyclerViewAdapter(notes, getApplicationContext());
        mNotesRecycler.setAdapter(adapter);
    }

所以,这段代码应该将数据添加到数据库中,然后选择它并添加到适配器,然后将此适配器添加到recyclerview。但是数据不是从数据库中选择的,所以note数组总是空的,我不明白为什么。表Note 有数据(我在Stetho 看过)。所以,据我了解,选择存在问题。

DAO接口的方法如下:

@Query ("SELECT * FROM NOTE")
    List<Note> getNotes();
@Insert (onConflict = OnConflictStrategy.REPLACE)
    void insertNote(Note note);

那么,怎么了?

【问题讨论】:

    标签: java android sql android-room


    【解决方案1】:

    你有没有在获取数据后尝试使用adapter.notifyDataSetChanged()

    【讨论】:

    • 是的,但仍然没有任何反应
    猜你喜欢
    • 1970-01-01
    • 2020-05-06
    • 2021-11-10
    • 2021-12-28
    • 1970-01-01
    • 2021-02-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多