我想从我的费用表中获得一个整数值,该值是费用(金额列)总费用的总和。
在我的费用实体类中
//This is the column Amount which I want the sum of all values in this column and get single integer value total amount
@ColumnInfo(name = "Amount")
private int amount;
public int getAmount() {
return amount;
}
在我的Dao课堂上,是通过LiveData给我总金额的函数
@Query("SELECT SUM(Amount) from Expense_table")
LiveData<Integer> getTotalExpenseAmount();
这是来自存储库类
public LiveData<Integer> getTotalExpenseAmount() {
return expenseDao.getTotalExpenseAmount();
}
这是来自ViewModel类
public LiveData<Integer> getTotalExpenseAmount() {
return expenseRepository.getTotalExpenseAmount();
}
一切正常。但是在我的情况下,我不想通过liveData观察器获取此值,而是希望自己获取该总计值。我不必一次又一次地使用观察器
expenseViewModel.getTotalExpenseAmount().observe(MainActivity.this, new Observer<Integer>() {
@Override
public void onChanged(Integer integer) {
totalExpense = integer;
addDataSet();
Toast.makeText(MainActivity.this, "Total Expense " + totalExpense, Toast.LENGTH_SHORT).show();
}
});
在许多我不想一次又一次地观察到的类中,我必须获得该总计值。请告诉我有效执行此操作的捷径。 如果您解决了我的问题,我将非常感谢你们