无法更改评分栏颜色
Unable to change rating bar color
我将以下代码用于评分栏。
<RatingBar
android:id="@+id/ratingBar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:layout_marginRight="10dp"
android:layout_marginTop="10dp"
android:stepSize="1.0"
android:background="@color/yellow"/>
问题是我无法更改评分栏中星星的颜色。即使我尝试设置背景。我怎样才能改变星星的颜色?
试一试....
android:progressTint="@color/color"
或
你可以使用它...
使用android:主题属性:
styles.xml
<style name="Theme.Rating" parent="Theme.AppCompat.Light">
<item name="colorAccent">@color/rating</item>
</style>
layout.xml
<android.support.v7.widget.AppCompatRatingBar
android:theme="@style/Theme.Rating"
android:numStars="5"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
我建议创建三张星图 yello_full.png、yellow_half.png 和 yellow_empty.png。现在将这些图像放在可绘制文件夹中。
在 drawable 中创建一个 xml 文件并放入此代码
<?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/yellow_empty" />
<item
android:id="@android:id/secondaryProgress"
android:drawable="@drawable/yellow_half" />
<item
android:id="@android:id/progress"
android:drawable="@drawable/yello_full" />
</layer-list>
现在在您的评分栏中添加这个
<RatingBar
android:progressDrawable="@drawable/ratingbar_yellow"/>
给你..享受编码
您可以通过设置滤色器来更改它,而不是创建可绘制对象。
例子
ratingWidget.getProgressDrawable().setColorFilter(color, PorterDuff.Mode.SRC_ATOP);
这里的color是你要给widget设置的颜色。
我将以下代码用于评分栏。
<RatingBar
android:id="@+id/ratingBar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:layout_marginRight="10dp"
android:layout_marginTop="10dp"
android:stepSize="1.0"
android:background="@color/yellow"/>
问题是我无法更改评分栏中星星的颜色。即使我尝试设置背景。我怎样才能改变星星的颜色?
试一试....
android:progressTint="@color/color"
或
你可以使用它...
使用android:主题属性:
styles.xml
<style name="Theme.Rating" parent="Theme.AppCompat.Light">
<item name="colorAccent">@color/rating</item>
</style>
layout.xml
<android.support.v7.widget.AppCompatRatingBar
android:theme="@style/Theme.Rating"
android:numStars="5"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
我建议创建三张星图 yello_full.png、yellow_half.png 和 yellow_empty.png。现在将这些图像放在可绘制文件夹中。
在 drawable 中创建一个 xml 文件并放入此代码
<?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/yellow_empty" />
<item
android:id="@android:id/secondaryProgress"
android:drawable="@drawable/yellow_half" />
<item
android:id="@android:id/progress"
android:drawable="@drawable/yello_full" />
</layer-list>
现在在您的评分栏中添加这个
<RatingBar
android:progressDrawable="@drawable/ratingbar_yellow"/>
给你..享受编码
您可以通过设置滤色器来更改它,而不是创建可绘制对象。 例子
ratingWidget.getProgressDrawable().setColorFilter(color, PorterDuff.Mode.SRC_ATOP);
这里的color是你要给widget设置的颜色。