2017-07-26 32 views
1

我用這個方法來改變搜索欄的拇指顏色:如何在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版本的拇指顏色?

回答

1

在style.XML佈局

<SeekBar 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:theme="@style/SeekBarColor" /> 
+1

謝謝,這個解決方案是對的! –

+0

乾杯!如果它對你有幫助,請接受。 – Abhi

+1

是的,我記得,但stackoverflow禁止在第一個7分鐘內接受) –

0

試試這個創建一個新的風格

<style name="SeekBarColor" 
parent="Widget.AppCompat.SeekBar"> 
<item name="colorAccent">@color/your_color</item> 
</style> 

最後,

sb.getProgressDrawable().setColorFilter(getResources().getCo‌​lor(R.color.my_color‌​), PorterDuff.Mode.SRC_ATOP); 

sb.getProgressDrawable().setColorFilter(0xFF00FF00, PorterDuff.Mode.MULTIPLY); 
sb.getThumb().setColorFilter(0xFF00FF00, PorterDuff.Mode.MULTIPLY); 
+0

我已經嘗試了另一種模式,它並沒有幫助我:( –