Android ApiDemos示例解析(187):Views->Rating Bar

本例介紹瞭RatingBar 的用法,RatingBar為SeekBar和ProgressBar的子類,使用五角星來顯同示評分。缺省大小的RatingBar 用戶可以通過方向鍵或是touch/drag 來改變評分值,而另外兩種風格 ratingBarStyleSmall 和 ratingBarStyleLarge 一般不支持用戶交互,通常用來顯示評分結果。

setNumStarts 可以設置評價欄五角星的個數,看看本例的XML定義:

<LinearLayout xmlns:android=”http://schemas.android.com/apk/res/android”
android:orientation=”vertical”
android:paddingLeft=”10dip”
android:layout_width=”match_parent”
android:layout_height=”match_parent”>

<RatingBar android:id=”@+id/ratingbar1″
android:layout_width=”wrap_content”
android:layout_height=”wrap_content”
android:numStars=”3″
android:rating=”2.5″ />

<RatingBar android:id=”@+id/ratingbar2″
android:layout_width=”wrap_content”
android:layout_height=”wrap_content”
android:numStars=”5″
android:rating=”2.25″ />

<LinearLayout
android:layout_width=”match_parent”
android:layout_height=”wrap_content”
android:layout_marginTop=”10dip”>

<TextView android:id=”@+id/rating”
android:layout_width=”wrap_content”
android:layout_height=”wrap_content” />

<RatingBar android:id=”@+id/small_ratingbar”
style=”?android:attr/ratingBarStyleSmall”
android:layout_marginLeft=”5dip”
android:layout_width=”wrap_content”
android:layout_height=”wrap_content”
android:layout_gravity=”center_vertical” />

</LinearLayout>

<RatingBar android:id=”@+id/indicator_ratingbar”
style=”?android:attr/ratingBarStyleIndicator”
android:layout_marginLeft=”5dip”
android:layout_width=”wrap_content”
android:layout_height=”wrap_content”
android:layout_gravity=”center_vertical” />

</LinearLayout>

RatingBar 提供瞭一個事件響應評分改變。

onRatingChanged(RatingBar ratingBar, float rating, boolean fromTouch)

 

 

You May Also Like