【发布时间】:2016-02-17 07:20:25
【问题描述】:
我正在尝试通过创建新样式来更改评分栏的星星,这就是我所做的:
<style name="RatingBarSmall" parent="android:Widget.DeviceDefault.Light.RatingBar.Indicator">
<item name="android:progressDrawable">@drawable/rating_bar</item>
<item name="android:minHeight">36dp</item>
<item name="android:maxHeight">36dp</item>
</style>
drawable/rating_bar:
<?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/rating_star_empty" />
<item
android:id="@android:id/secondaryProgress"
android:drawable="@drawable/rating_star_empty" />
<item
android:id="@android:id/progress"
android:drawable="@drawable/rating_star_filled" />
</layer-list>
评分栏 xml 视图:
<RatingBar
android:id="@+id/ratingBar"
style="@style/RatingBarSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0"
android:isIndicator="true"
android:rating="5" />
这是两张图片:
编辑:已解决:我只是将评分栏高度设置为图像高度。
谢谢
【问题讨论】:
-
您可能想要使用 wrap_content 而不是 minHeight 和 maxheight
-
您可以将您的代码与this 进行比较。可能对你有帮助。
-
这可能是评分栏中的错误。我多次遇到同样的问题,但没有想要的结果。
-
为此使用 FrameLayout;我以前也有同样的问题!如果您有更多帮助,请告诉我
标签: android android-layout layout android-bitmap ratingbar