当我尝试将我的星星颜色从RatingBar更改为ListView Adapter时,我遇到问题,我不明白为什么不起作用,因为在ListView之外,所有内容似乎都可以使用相同的代码正常工作。
我更改星色的代码是:
DrawableCompat.setTint(holder.ratingBar.getProgressDrawable(), pContext.getResources().getColor(R.color.orange));
有人遇到这个问题吗?
更新:我已解决此代码的问题
LayerDrawable layerDrawable = (LayerDrawable) holder.ratingBar.getProgressDrawable();
DrawableCompat.setTint(DrawableCompat.wrap(layerDrawable.getDrawable(0)), Color.RED); // Empty star
DrawableCompat.setTint(DrawableCompat.wrap(layerDrawable.getDrawable(1)), Color.BLUE); // Partial star
DrawableCompat.setTint(DrawableCompat.wrap(layerDrawable.getDrawable(2)), Color.BLUE); // Full star
最佳答案
我相信您遇到的与此类似的问题,似乎是支持库中的错误。
https://code.google.com/p/android/issues/detail?id=172067