我试图创建一个像这样的小评级栏
<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
,或者如果任何其他解决方案或库对我来说没问题但是我需要小的
答案 0 :(得分:1)
将您的父级样式设置为@style/Widget.AppCompat.RatingBar.Small
。
答案 1 :(得分:0)
我曾经遇到像你这样的问题,因此android似乎没有考虑评级栏的大小调整。我应用的所有样式都不足以满足我的用例。我最终使用了第三方库。 The first one或The second one这些库可帮助您调整评级栏的大小。因为评级栏的android父样式很难调整大小并且没有默认实现。快乐的编码!