Как получить значение RatingBar

Как читать и отображать значение барной стойки

i[0] // should be selected value private OnClickListener onclickbutton1 = new OnClickListener() { public void onClick(View v) { int[] i = new int[]{ R.id.mRatingBar}; statusMessage.setText("value is " + i[0]); } }; 

// это работает

 private OnClickListener onclickbutton1 = new OnClickListener() { public void onClick(View v) { RatingBar mBar = (RatingBar) findViewById(R.id.mRatingBar); float[] i = new float[]{ mBar.getRating() }; statusMessage.setText("value is.. " + i[0]); } }; 

То, что вы здесь делаете, неверно: вы выводите идентификатор ресурса в баре оценки, а не его значение.

Позвольте мне предположить, что вы раньше сделали что-то вроде:

 RatingBar mBar = (RatingBar) findViewById(R.id.mRatingBar); mBar.setOnClickListener(onclickbutton1); 

Например, в операции onCreate() . Затем в раскрывающемся списке кликов вы можете получить рейтинг следующим образом:

 public void onClick(View v) { RatingBar bar = (RatingBar) v; statusMessage.setText("value is " + bar.getRating()); } 

Простой вызов

  ratingBar.getRating() ; GET RATING BAR VALUE 

Когда вы хотите получить значение рейтинга при изменении

  public void onRatingChanged(RatingBar ratingBar, float rating, boolean fromTouch) { final int numStars = ratingBar.getNumStars(); ratingBar.getRating() ; final float ratingBarStepSize = ratingBar.getStepSize(); } 

Используйте это, чтобы получить рейтинг

 (RatingBar)findViewById(R.id.ratingbar1)).setOnRatingBarChangeListener(this); ((RatingBar)findViewById(R.id.ratingbar2)).setOnRatingBarChangeListener(this); } public void onRatingChanged(RatingBar ratingBar, float rating, boolean fromTouch) { final int numStars = ratingBar.getNumStars(); mRatingText.setText( getString(R.string.ratingbar_rating) + " " + rating + "/" + numStars); } 

Используйте следующий пример ссылки для получения рейтинга из рейтингового бара.

http://androidorigin.blogspot.com/2010/10/android-ratingbar-demo-program.html

 RatingBar rate = (RatingBar)findViewById(R.id.R_rate); //use ratings within event listner code block float rating = rate.getRating(); 
 import android.widget.RatingBar; public class PageAboutFragment extends Fragment implements RatingBar.OnRatingBarChangeListener { rbSearch.setOnRatingBarChangeListener(this); public void onRatingChanged(RatingBar ratingBar, float rating, boolean fromUser) { tvRatingContent.setText(rating+"/5 Stars"); }