Android評価バーの例

Android評価バーの例

Androidでは、「http://developer.android.com/reference/android/widget/RatingBar.html[android.widget.RatingBar]」を使用して、星のアイコンに評価バーコンポーネントを表示できます。 ユーザーは、星をタッチ、ドラッグ、またはクリックして、評価値を簡単に設定できます。

このチュートリアルでは、XMLを使用して評価バー、いくつかのテキストビュー、およびボタンを表示する方法を示します。 ユーザーが評価バーの星をクリックすると、選択した評価値がテキストビューに表示されます。 また、ユーザーがボタンをクリックすると、選択した評価値がフローティングメッセージ(トーストメッセージ)として表示されます。

P.S This project is developed in Eclipse 3.7, and tested with Android 2.3.3.

1. 評価バー

res/layout/main.xml」ファイルを開き、評価バーコンポーネント、いくつかのテキストビュー、およびボタンを追加します。

Note
評価バーには、多くの構成可能な値が含まれています。 この場合、評価バーには4つの星が含まれ、それぞれ1.0の値が増加するため、最小値1.0(1つ星)と最大値4.0(4つ星)が含まれます。 さらに、デフォルトで2番目の星(2.0)が選択されました。

ファイル:res / layout / main.xml




    

    

    

2. コードコード

アクティビティ「onCreate()」メソッド内で、評価バーにリスナーをアタッチし、評価値が変更されたときに起動します。 ボタンの別のリスナー。ボタンがクリックされると起動します。 コードのコメントを読んでください。一目瞭然です。

ファイル:MyAndroidAppActivity.java

package com.example.android;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.RatingBar;
import android.widget.RatingBar.OnRatingBarChangeListener;
import android.widget.TextView;
import android.widget.Toast;

public class MyAndroidAppActivity extends Activity {

  private RatingBar ratingBar;
  private TextView txtRatingValue;
  private Button btnSubmit;

  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    addListenerOnRatingBar();
    addListenerOnButton();

  }

  public void addListenerOnRatingBar() {

    ratingBar = (RatingBar) findViewById(R.id.ratingBar);
    txtRatingValue = (TextView) findViewById(R.id.txtRatingValue);

    //if rating value is changed,
    //display the current rating value in the result (textview) automatically
    ratingBar.setOnRatingBarChangeListener(new OnRatingBarChangeListener() {
        public void onRatingChanged(RatingBar ratingBar, float rating,
            boolean fromUser) {

            txtRatingValue.setText(String.valueOf(rating));

        }
    });
  }

  public void addListenerOnButton() {

    ratingBar = (RatingBar) findViewById(R.id.ratingBar);
    btnSubmit = (Button) findViewById(R.id.btnSubmit);

    //if click on me, then display the current rating value.
    btnSubmit.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {

            Toast.makeText(MyAndroidAppActivity.this,
                String.valueOf(ratingBar.getRating()),
                    Toast.LENGTH_SHORT).show();

        }

    });

  }
}

3. Demo

アプリケーションを実行してください。

1. 結果として、2番目の星がデフォルトで選択されます。

android rating demo1

2. 3番目の星rating value is changedをタッチして、現在選択されている値を結果(テキストビュー)に表示します。

android rating demo2

3. 最初の星をタッチすると、click on the submit buttonで、現在選択されている値がフローティングメッセージとして表示されます。

android rating demo3

ソースコードをダウンロード

ダウンロード–Android-RatingBar-Example.zip(15 KB)