如何读取和显示评级栏值

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]);
    }
};

最佳答案

你在这里做的是不对的:你输出的是评级栏的资源 id,而不是它的值。

让我假设您之前做过类似的事情:

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

例如在 Activity 的 onCreate() 中。然后在您提供的点击监听器中,您可以获得如下评分:
public void onClick(View v) {
    RatingBar bar = (RatingBar) v;
    statusMessage.setText("value is " + bar.getRating());
}

关于android - 如何获得 RatingBar 值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7332537/

10-12 22:36