さまよえる、Android

Androidのプログラミングで便利なことや残しておきたいことを残しておく。もしオススメのライブラリがあったら教えてくださいね。

RatingBarの実装

アクティビティ

public class MainActivity extends AppCompatActivity  implements RatingBar.OnRatingBarChangeListener {

    RatingBar mRatingBar;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        mRatingBar = (RatingBar) findViewById(R.id.rating);
        mRatingBar.setOnRatingBarChangeListener(this);
        //最大星数
        mRatingBar.setNumStars(6);
        // ステップ
        mRatingBar.setStepSize(1);
        // レーティングをセットする
        mRatingBar.setRating(3);
    }

    @Override
    public void onRatingChanged ( RatingBar ratingBar, float rating, boolean fromUser ) {
        Toast.makeText(getApplicationContext(),
                String.valueOf(ratingBar.getRating()), Toast.LENGTH_SHORT).show();
    }

}

xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/activity_main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="jp.co.araiyusuke.ratingbar.MainActivity">
    <RatingBar
        android:id="@+id/rating"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />
</RelativeLayout>