我正在尝试将星星颜色改为黄色 我不想使用其他样式(!),只需更改RatingBar中内置星星的颜色。
我已经阅读了一些如何改变风格的教程,它们都非常相似。但由于某种原因,它对我不起作用 无论如何,因为我只是想改变颜色,而不是整个风格,我使用下面的代码:
<RatingBar
android:id="@+id/rbRating"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:isIndicator="true"
android:stepSize="0.5" />
布局
LayerDrawable stars = (LayerDrawable) rbBookRating.getProgressDrawable();
(似乎)我的应用程序在此行之后崩溃:
try
INSERT INTO CodeUsages
VALUS (@code,@user,1)
catch
UPDATE CodeUsages
SET Usages = Usages + 1
WHERE UserId = @user
AND Code = @code
有什么建议吗?
答案 0 :(得分:1)
我只需要使用:
DrawableCompat.setTint(rbBookRating.getProgressDrawable(), Color.YELLOW);
非常感谢...
答案 1 :(得分:1)
首先创建一个主题
<style name="RatingBar" parent="Theme.AppCompat">
<item name="colorControlNormal">@color/duskYellow</item>
<item name="colorControlActivated">@color/lightGrey</item>
</style>
然后在xml中添加
<RatingBar
android:id="@+id/rating"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:numStars="5"
android:stepSize="1"
android:theme="@style/RatingBar"/>