安卓 SeekBar 拇指自定义化

5

我希望隐藏滚动条,只显示滑块。我使用max-height=0dip实现了这一点,但效果并不完全。同时,我想在滑块上设置文本,并使用多个图像创建滑块。例如,滑块可以是类似于按钮的图像,并带有文本,该按钮具有向下的尾巴,该尾巴随着行增加而增加。

3个回答

15

关于去除背景,我成功地采用了以下方式。在这里,“blank drawable”是一个1x1像素的透明PNG文件。

    <SeekBar
        android:id="@+id/bar"
        android:layout_width="fill_parent"
        android:layout_height="30dip"
        android:progressDrawable="@drawable/blank"
     />

您还可以使用以下方式更改可绘制对象:

android:thumb="@drawable/icon"

为了添加文本,我猜你需要创建一个自定义组件


我也使用过这种方法,但似乎有点像是一个hack。难道没有更好的方法吗? - dell116
3
我通过在XML中设置以下内容来完成它: android:progressDrawable="@android:color/transparent" - zwebie

2
  SeekBar seekbar = new SeekBar(context, attrs);

     // ------------- custom thumb
            //----- using resources 

    seekbar.setThumb(new BitmapDrawable(BitmapFactory.decodeResource(
         context.getResources(), R.drawable.seekbar_progress_thumb)));
          //----- or using shape drawable


    ShapeDrawable thumb = new ShapeDrawable(new RectShape());
    thumb.getPaint().setColor(Color.rgb(0, 0, 0));
    thumb.setIntrinsicHeight(-80);
    thumb.setIntrinsicWidth(30);
    seekbar.setThumb(thumb);

-1
为了隐藏该栏,您可以使用十六进制颜色设置不透明度值。您只需要添加正确的前缀即可。 我使用以下代码隐藏了 seekBar:
android:progressBackgroundTint="#00555555"
android:progressTint="#00555555"

前两个数字(即“00”)设置不透明度(alpha百分比),后面的六个数字(即“555555”)设置颜色。

查看此帖子以获取更多信息和十六进制不透明度值列表: 了解Android上的颜色(六个字符)


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接