天天看點

RatingBar(星級評分條)

1.RatingBar相關屬性

android:isIndicator:是否用作訓示,使用者無法更改,預設false

android:numStars:顯示多少個星星,必須為整數

android:rating:預設評分值,必須為浮點數

android:stepSize: 評分每次增加的值,必須為浮點數

room_ratingbar.setRating(float)

2.自定義評分條

1)同seekbar一樣,先寫一個layer-list檔案

ratingbar_full.xml:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:id="@android:id/background"
        android:drawable="@drawable/ic_rating_off1" />
    <item android:id="@android:id/secondaryProgress"
        android:drawable="@drawable/ic_rating_off1" />
    <item android:id="@android:id/progress"
        android:drawable="@drawable/ic_rating_on1" />
</layer-list>  
           

2)在style.xml中自定義下RatingBar Style

<style name="roomRatingBar" parent="@android:style/Widget.RatingBar">
        <item name="android:progressDrawable">@drawable/ratingbar_full</item>
        <item name="android:minHeight">dp</item>
        <item name="android:maxHeight">dp</item>//這裡的數字跟圖檔大小一樣
    </style>
           

3)布局檔案

<RatingBar
        android:id="@+id/rb_normal"
        style="@style/roomRatingBar"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />
           

PS: 最好把星星的圖檔在那幾個檔案夾了都放上,不然有時候怎麼調都有問題。