我的活动的onCreate中有这段代码:
MainActivity.mViewModel.getTransactionsByDateId(dateId).observe(this, data -> {
transacs.addAll(data);
});
transacs
只是交易类型(数据库实体)的列表。 getTransactionsByDateId
调用此代码:
@Query("SELECT * from transactions_table where dates_id = :dateId")
LiveData<List<Transactions>> getTransactionsByDateId(int dateId);
当我第一次打开活动时,数据为空。但是,当我第二次打开它时,它已被填充。我知道Room是异步的,但是有一种方法可以避免这种行为,因为我在活动开始时就需要这些数据?