I have a SeekBar with a custom drawable for the Thumb, and I would like to be able to show/hide it based on another control I have.
I have tried loading the drawable from resources, and then using SeekBar.setThumb() with the drawable, or null.
That hides it (the set to null), but I can never get it back.
Just add android:thumbTint="@color/yourColor" in your seekbar.
Show activity on this post. Then I used vector code in . xml file, which has attrs android:width="28dp" and android:height="28dp" in the vector tag. Here we can change the size of the thumb.
Now go to the activity_main. xml create a layout and inside the layout add a SeekBar. Specify the height width of SeekBar and the max progress that you want to use set progress to 0. This will create a customized Seekbar inside activity_main.
In Android Discrete SeekBar is just an advancement of progressBar just like the SeekBar, the only difference in SeekBar and discrete SeekBar being that in discrete SeekBar, we can only set the value only to discrete values like 1, 2, 3, and so on.
The best way to do this is to set the drawable for the thumb from XML (as I was doing all along) and then when you want to hide/show the Thumb drawable, just manipulate it's alpha value:
// Hide the thumb drawable if the SeekBar is disabled
if (enabled) {
seekBar.getThumb().mutate().setAlpha(255);
} else {
seekBar.getThumb().mutate().setAlpha(0);
}
Edit:
If thumb appearing white after setting alpha to zero, try adding
<SeekBar
....
android:splitTrack="false"
/>
Hide your thumb in a SeekBar via xml
android:thumbTint="@color/transparent"
for Example
<SeekBar
android:id="@+id/seekBar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:clickable="false"
android:thumb="@color/gray"
android:thumbTint="@android:color/transparent" />
The easiest & simplest way to do it is just add this line in your Seekbar view in its xml
android:thumb="@android:color/transparent"
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With