Я хочу получить целочисленное значение из моей таблицы расходов, которая представляет собой сумму общих расходов (столбец суммы).
В моем классе сущностей расходов
//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;
}
В моемДао класс здесь это функция, которая дает мне общую сумму через 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();
}
});
Я должен получить это значение общей суммы во многих классах, где я не хочу наблюдать это снова и снова. Пожалуйста, скажите мне любой ярлык, чтобы сделать это эффективно. Я буду очень благодарен вам, ребята, если вы решите мою проблему