android 如何在SeekBar中隐藏/显示可绘制的拇指

2ledvvac  于 2023-08-01  发布在  Android
关注(0)|答案(6)|浏览(127)

我有一个SeekBar与自定义drawable的拇指,我希望能够显示/隐藏它的基础上,另一个控制我。
我试过从资源中加载drawable,然后对drawable使用SeekBar.setThumb()或null。
这隐藏了它(设置为null),但我永远无法恢复它。

mi7gmzs6

mi7gmzs61#

最好的方法是从XML中设置Thumb的drawable(就像我沿着在做的那样),然后当你想隐藏/显示Thumb drawable时,只需操纵它的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" 
/>

voj3qocg

voj3qocg2#

通过xml在SeekBar中隐藏您的拇指

android:thumbTint="@color/transparent"

字符串
例如

<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" />

lokaqttq

lokaqttq3#

最简单的方法就是在Seekbar视图的xml中添加这一行

android:thumb="@android:color/transparent"

字符串

jdzmm42g

jdzmm42g4#

您可以通过设置任意大的滑块偏移值来隐藏搜索栏滑块,这将使滑块移出视图。例如,在一个示例中,

mySeekBar.setThumbOffset(10000);    // moves the thumb out of view (to left)

字符串
要再次显示拇指,请将偏移设置为零或其他常规值:

mySeekBar.setThumbOffset(0);        // moves the thumb back to view


这种方法适用于所有API级别。

e5njpo68

e5njpo685#

通过xml在SeekBar中隐藏您的拇指

android:thumb="@null"

字符串

zlhcx6iw

zlhcx6iw6#

只需将这两行代码添加到seekbarxml中
android:thumbTint="#00D1CEB0”
android:splitTrack=“false”

相关问题