测验应用程序,类别有问题,问题有答案。
我在 DAO 中有两个查询。
在第一个中,我从数据中获取所有类别:
@Query("SELECT * from category_table ORDER BY category_id")
fun getAllCategories(): LiveData<List<Category>>
在第二个中,我按类别 id 获得问题和答案列表:
@Query("SELECT * FROM question_table WHERE parent_category_id = :categoryId ")
fun getQuestionsWithAnswersByCategoryId(categoryId: Long): LiveData<List<QuestionWithAnswers>>
存储库:
val getAllCategories: LiveData<List<Category>> = quizDao.getAllCategories()
fun getQuestionsWithAnswersByCategoryId(id: Long): LiveData<List<QuestionWithAnswers>> {
return quizDao.getQuestionWithAnswers(id)
}
这是我的视图模型:
val getAllCategories: LiveData<List<Category>>
var questionById: LiveData<List<QuestionWithAnswers>>
init {
getAllCategories = repository.getAllCategories
questionByCategoryId = repository.getQuestionWithAnswersByCategoryId(???????)
}
问题是我事先不知道类别的 id,需要从数据库中获取它们。
当我尝试在视图模型中获取类别 ID 时,如下所示:
var categoryId = getAllCategories.value[0].categoryId
它返回空值。
有什么方法可以获取包含在视图模型中的 livedata 中的类别 ID?