我有一个SeekBar,其中有一个自定义的Thumb可绘制对象,我希望能够基于我拥有的另一个控件来显示/隐藏它。

我尝试从资源中加载drawable,然后将SeekBar.setThumb()与drawable或null一起使用。

这将其隐藏(将其设置为null),但我永远无法将其取回。

最佳答案

最好的方法是从XML设置Thumb的可绘制对象(就像我一直做的那样),然后当您要隐藏/显示Thumb可绘制对象时,只需操纵它的alpha值即可:

// Hide the thumb drawable if the SeekBar is disabled
if (enabled) {
    seekBar.getThumb().mutate().setAlpha(255);
} else {
    seekBar.getThumb().mutate().setAlpha(0);
}

编辑:

如果将alpha设置为零后拇指显示为白色,请尝试添加
<SeekBar
    ....
    android:splitTrack="false"
/>

关于android - 如何在SeekBar中隐藏/显示可绘制的拇指,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20855815/

10-13 04:11