[Android & Kotlin] RatingBar で評価の星を増減させる

RatingBar(レーティングバー)は飲食店の評価や本・アプリの評価でよく見る星の数というものです
Androidアプリでの設定はどうするのでしょうか

1x1.trans - [Android & Kotlin] RatingBar で評価の星を増減させる


Android Studio
2024.1.1

 




RatingBar

 

RatingBarはProgressBarとSeekBarを継承しているウィジェットの1つです
RatingBarで見つからない機能はProgressBarにあったりします

java.lang.Object
   ↳ android.view.View
   ↳ android.widget.ProgressBar
   ↳ android.widget.AbsSeekBar
   ↳ android.widget.RatingBar

設定は簡単にDesignのWidgetsから「RatingBar」を選んで設置できます

1x1.trans - [Android & Kotlin] RatingBar で評価の星を増減させる

実際にユーザーが評価したレートを入れる操作を受け付けるようなスキームで
簡単なアプリを作ってみます
 

 

RatingBarのプロパティ

 RatingBar

によればRatingBarとして以下のメソッドがあります

  •  isIndicator
    • ユーザーにより変更可能かどうか
  • numStars
    • 評価レート、最大の星の数
  • rating
    • 初期のレート
  • stepSize
    • 評価ステップ、0.5だと星半分

また、ユーザーの評価変更を受け取って知らせるリスナーがあります

また、星の色を動的に変更するには
setProgressTintList()が使えます

金色っぽくするために
Color.rgb(217, 194, 0)がいいかもしれません

 

サンプルコード

 

MainActivity.kt

activity_main.xml

stings.xml

これで実行してみます

activity_main.xml で設定した箇所は
コードで設定することも可能

References:
RatingBar | Android Developers
OnRatingBarChangeListener

シェアする

  • このエントリーをはてなブックマークに追加

フォローする