android ratingbar小风格

时间:2017-09-23 20:19:37

标签: android ratingbar

我试图创建一个像这样的小评级栏

   <RatingBar
                    android:id="@+id/ratingBar"
                    style="?android:attr/ratingBarStyleSmall"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_gravity="right"
                    android:layout_marginTop="10dp"
                    android:numStars="5"
                    android:rating="3.5" />

它的工作完美,现在我需要用这样的自定义图像替换星号

 <style name="CustomRatingBar" parent="@android:style/Widget.RatingBar">
        <item name="android:progressDrawable">@drawable/ratingbar</item>

    </style>

ratingbar.xml

<?xml version="1.0" encoding="utf-8"?>
<!--suppress AndroidDomInspection -->
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:id="@+android:id/background"
        android:drawable="@drawable/ic_love_empty" />
    <item android:id="@+android:id/secondaryProgress"
        android:drawable="@drawable/ic_love_empty" />
    <item android:id="@+android:id/progress"
        android:drawable="@drawable/ic_love_fill" />
</layer-list>

这里的问题是评级栏大小,它非常大并且裁剪我如何用@android:style/Widget.RatingBar替换android:attr/ratingBarStyleSmall,或者如果任何其他解决方案或库对我来说没问题但是我需要小的

2 个答案:

答案 0 :(得分:1)

将您的父级样式设置为@style/Widget.AppCompat.RatingBar.Small

答案 1 :(得分:0)

我曾经遇到像你这样的问题,因此android似乎没有考虑评级栏的大小调整。我应用的所有样式都不足以满足我的用例。我最终使用了第三方库。 The first oneThe second one这些库可帮助您调整评级栏的大小。因为评级栏的android父样式很难调整大小并且没有默认实现。快乐的编码!