Я пытаюсь подсчитать средний рейтинг пользователя в базе данных Firebase. Таким образом, клиент дает пользователю оценку, а затем я хочу сохранить все оценки в дочерних рейтингах в пределах дочернего пользователя. Так это будет выглядеть так: Пользователь -> Идентификатор пользователя -> Рейтинги -> Тогда идентификатор для работы и рейтинг. Но я борюсь за то, как подключить базу данных в этой функции, чтобы это работало.
private void tradesmanRating() {
ratingBar.setVisibility(View.VISIBLE);
ratingBar.setOnRatingBarChangeListener(new RatingBar.OnRatingBarChangeListener() {
@Override
public void onRatingChanged(RatingBar ratingBar, float rating, boolean fromUser) {
// What needs to go within here? I know something to do with the database
}
});
}
У меня также есть это в функции для получения информации пользователя базы данных, которая вычислит среднее значение всех оценок .
int ratingSum = 0;
float ratingsTotal = 0;
float ratingsAvg = 0;
for (DataSnapshot child : dataSnapshot.child("rating").getChildren()){
ratingSum = ratingSum + Integer.valueOf(child.getValue().toString());
ratingsTotal++;
}
if(ratingsTotal!= 0){
ratingsAvg = ratingSum/ratingsTotal;
ratingBar.setRating(ratingsAvg);