禁用RatingBar中的阴影

时间:2017-10-07 10:37:27

标签: android user-interface ratingbar

我在我的应用程序中使用RatingBar。我想删除阴影(它们在屏幕截图上有下划线),但我不知道该怎么做。

我的风格:

<style name="RatingBar" parent="Theme.AppCompat">
    <item name="colorControlNormal">@color/colorAccent</item>
    <item name="colorControlActivated">@color/colorAccent</item>
    <item name="colorControlHighlight">@color/colorAccent</item>
    <item name="colorPrimary">@color/colorAccent</item>
    <item name="colorAccent">@color/colorAccent</item>
</style>

你能告诉我如何删除阴影吗?

Shadow in RatingBar

2 个答案:

答案 0 :(得分:1)

有点晚但如果您使用的是API 21+,则可以将辅助进度时间设置为透明:

android:secondaryProgressTint="@android:color/transparent"

答案 1 :(得分:0)

我也遇到了同样的问题。我想到了。 1指数的drawable改变了阴影颜色。您可以将其设置为实际填充星形颜色的浅色。

RatingBar ratingBar = footer.findViewById(R.id.ratingBar);
        LayerDrawable stars = (LayerDrawable) ratingBar.getProgressDrawable();
        stars.getDrawable(0).setColorFilter(Color.parseColor("#b0b0b0"), PorterDuff.Mode.SRC_ATOP);
        stars.getDrawable(1).setColorFilter(Color.parseColor("#fff9ee"), PorterDuff.Mode.SRC_ATOP);// This line changes the color of the shadow under the stars
        stars.getDrawable(2).setColorFilter(Color.parseColor("#FEBE55"), PorterDuff.Mode.SRC_ATOP);
        ratingBar.setProgressDrawable(stars);