Я начинающий программист и работаю над приложением, которое отображает элементы. Пользователи могут оценивать элемент с помощью строки рейтинга, а также написать комментарий. Шкала рейтинга также имеет шкалу.
Как рассчитать среднюю оценку предмета и отобразить его в новой строке рейтинга? Есть идеи?
RatingBar mRatingBar = (RatingBar) findViewById(R.id.ratingBar);
EditText mFeedback = (EditText) findViewById(R.id.etFeedback);
Button mSendFeedback = (Button) findViewById(R.id.btnSubmit);
TextView mRatingScale = (TextView) findViewById(R.id.tvRatingScale);
mRatingBar.setOnRatingBarChangeListener(new RatingBar.OnRatingBarChangeListener() {
@Override
public void onRatingChanged(RatingBar ratingBar, float v, boolean b) {
mRatingScale.setText(String.valueOf(v));
switch ((int) ratingBar.getRating()) {
case 1:
mRatingScale.setText("Pretty bad");
break;
case 2:
mRatingScale.setText("Just okay");
break;
case 3:
mRatingScale.setText("Good");
break;
case 4:
mRatingScale.setText("Very good");
break;
case 5:
mRatingScale.setText("Amazing!");
break;
default:
mRatingScale.setText("");
}
}
});
mSendFeedback.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (mRatingBar.getRating() == 0.0 ) {
Toast.makeText(EventDemo.this, "Please enter a rating", Toast.LENGTH_LONG).show();
} else {
mFeedback.setText("");
mRatingBar.setRating(0);
Toast.makeText(EventDemo.this, "Thanks for the rating", Toast.LENGTH_SHORT).show();
}
}