サイト移転のお知らせ:http://techbooster.org/に移転しました

レイティングバーを使う

12月 11, 2010   //   by kseto   //   ユーザインターフェース  //  1 Comment

レイティングバーとは下の写真のように、レートを星の点灯で表すためのビューです。

用途としてはなにかの評価を行うような場合に使います。

というわけで今回はレイティングバーの使い方についてご紹介します。
詳細はつづきからどうぞ。

レイティングバーの定義

まずはレイアウトファイルにレイティングバーを定義しましょう。
以下のようなコードをレイアウトファイルに追記します。

<RatingBar
    android:id="@+id/ratingbar"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" />

このとき指定できる属性は主に以下のようなものがあります。

numStar 最大レート値
rating デフォルトのレート値
stepSize レートのステップサイズ値

上の例では最大レートを3に、デフォルトのレートを2.5にしています。

レートが変更されたことを知るには

レートが変更されたことはOnRatingBarChangeListenerを使って知ることができます。
たとえばレートが変更されたときにToastでレートの値を表示するには以下のようにします。

public class RatingBarSample extends Activity implements RatingBar.OnRatingBarChangeListener {
    /** Called when the activity is first created. */
    RatingBar RatingBar;
    Toast mToast;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        RatingBar = (RatingBar) findViewById(R.id.ratingbar);
        RatingBar.setOnRatingBarChangeListener(this);
    }

    public void onRatingChanged(RatingBar ratingBar, float rating, boolean fromTouch) {
        if (mToast != null) {
            mToast.cancel();
        }
        mToast = Toast.makeText(RatingBarSample.this, "Current Rating is "+RatingBar.getRating(), Toast.LENGTH_LONG);
        mToast.show();
    }
}


関連する記事:

Sponsored Link

1 Comment

技術書新刊 発売中

アンドロイドアカデミアには、CIやテスト、互換検証など実務に生きるノウハウをあつめています

技術書新刊 発売中

Android Next!はAndroid 7.0に対応したはじめての技術書です!


The Web Explorer 2はCSSの中央寄せやWebAudioなど未来を読み解く一冊です


Revised TypeScript in DefinitelylandはTypeScript 2.0(β)に対応した解説書です。インストールから型定義まで幅広くサポートしています


技術書をかこう!はエンジニアらしい執筆環境を構築、HowTo本です