Android RatingBar 評價欄 星星 大小 樣式 設定
阿新 • • 發佈:2018-12-30
Android系統自帶RatingBar,無法直接指定寬高,不然會出現無法全部顯示的情況,使用系統自帶的兩個主題
也只能做到固定小版或者大版。
按照以下幾個步驟 可以做到自控ratingbar 寬高。
第一步 準備選中何為選中的兩種星星,大小相同。
Step-1. You need your own rating stars in res/drawable ...
A full star
Empty star
第二部 為星星定義選中與非選中狀態
Step-2 In res/drawable you need ratingstars.xml as follow ...
第三步,為Ratingbar設定style,此處開始正式指定高度。
第四部,就可以直接使用了
Step-4 In your layout ...
?android:attr/ratingBarStyleIndicator
和?android:attr/ratingBarStyleSmall
也只能做到固定小版或者大版。
按照以下幾個步驟 可以做到自控ratingbar 寬高。
第一步 準備選中何為選中的兩種星星,大小相同。
Step-1. You need your own rating stars in res/drawable ...
A full star
Empty star
第二部 為星星定義選中與非選中狀態
Step-2 In res/drawable you need ratingstars.xml as follow ...
<?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/star_empty" /> <item android:id="@android:id/secondaryProgress" android:drawable="@drawable/star_empty" /> <item android:id="@android:id/progress" android:drawable="@drawable/star" /> </layer-list>
第三步,為Ratingbar設定style,此處開始正式指定高度。
Step-3 In res/values you need styles.xml as follow ... <?xml version="1.0" encoding="utf-8"?> <resources> <style name="foodRatingBar" parent="@android:style/Widget.RatingBar"> <item name="android:progressDrawable">@drawable/ratingstars</item> <item name="android:minHeight">22dip</item> <item name="android:maxHeight">22dip</item> </style> </resources>
第四部,就可以直接使用了
Step-4 In your layout ...
<RatingBar android:id="@+id/rtbProductRating" android:layout_height="wrap_content" android:layout_width="wrap_content" android:numStars="5" android:rating="3.5" android:isIndicator="false" style="@style/foodRatingBar" />