如何在Android上着色SeekBar的拇指?
问题描述:
我用这个方法来改变搜索栏的拇指颜色:如何在Android上着色SeekBar的拇指?
public static void setThumbColor(final SeekBar sb, @ColorInt final int color) {
final Drawable thumb = sb.getThumb();
thumb.setColorFilter(color, PorterDuff.Mode.SRC_IN);
sb.setThumb(thumb);
}
与此代码的工作以及在Android 5.0(棒棒堂)和更新。但在Android 4.2.2或4.3.1上,我的方法不起作用,拇指的颜色不会改变。
我应该怎么做才能改变旧的android版本的拇指颜色?
答
在style.XML布局
<SeekBar
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/SeekBarColor" />
答
试试这个创建一个新的风格
<style name="SeekBarColor"
parent="Widget.AppCompat.SeekBar">
<item name="colorAccent">@color/your_color</item>
</style>
最后,
sb.getProgressDrawable().setColorFilter(getResources().getColor(R.color.my_color), PorterDuff.Mode.SRC_ATOP);
或
sb.getProgressDrawable().setColorFilter(0xFF00FF00, PorterDuff.Mode.MULTIPLY);
sb.getThumb().setColorFilter(0xFF00FF00, PorterDuff.Mode.MULTIPLY);
+0
我已经尝试了另一种模式,它并没有帮助我:( –
谢谢,这个解决方案是对的! –
干杯!如果它对你有帮助,请接受。 – Abhi
是的,我记得,但*禁止在第一个7分钟内接受) –