RatingBar使用

一个五角星评分

效果图

RatingBar使用_android

mainActivity.java

import android.os.Bundle;
import android.widget.RatingBar;
import android.widget.Toast;

import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;

import fengxing.primer.textlink.R;


/**
* 五角星的评分控件
*/
public class RatingActivity extends AppCompatActivity implements RatingBar.OnRatingBarChangeListener {

private RatingBar rb_rating_bar;

@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_ratingbar);

rb_rating_bar = findViewById(R.id.rb_rating_bar);
rb_rating_bar.setMax(10);
rb_rating_bar.setProgress(1);
rb_rating_bar.setOnRatingBarChangeListener(this);

}

@Override
public void onRatingChanged(RatingBar ratingBar, float v, boolean b) {
Toast.makeText(RatingActivity.this,"评分: "+v+" 真实值: "+ratingBar.getProgress(),Toast.LENGTH_SHORT).show();
}
}

layout.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
android:gravity="bottom"
android:background="@drawable/back1"
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">


<RatingBar
android:layout_marginBottom="20dp"
android:layout_gravity="center"
android:id="@+id/rb_rating_bar"
android:layout_width="240dp"
android:layout_height="wrap_content">
</RatingBar>

</LinearLayout>