【问题标题】:Android - make seekbar invisible but still functionalAndroid - 使搜索栏不可见但仍然有效
【发布时间】:2018-11-14 20:03:53
【问题描述】:

我想要具有 SeekBar 的效果,但我不希望它可见。我希望用户在图像上左右滑动手指以减少/增加图像的不透明度。我有这个使用 SeekBar,将图像的 alpha 设置为 SeekBar 的进度更改。现在的挑战是隐藏 SeekBar。我只希望用户在图像上来回移动手指并改变不透明度。

我试过了:

final SeekBar opacitySeekBar = (SeekBar) myLayout.findViewById(R.id.opacitySeekBar);
opacitySeekBar.setAlpha(0);

还有:

opacitySeekBar.setVisibility(View.INVISIBLE);

两者都不起作用。有什么想法吗?

【问题讨论】:

  • 修复它,两步过程。所以在 SeekBar 的 xml 中,我添加了这一行以使进度条不可见: android:progressDrawable="@android:color/transparent" 在代码中,我添加了这一行以使拇指不可见: opacitySeekBar.getThumb( ).mutate().setAlpha(0);
  • 你给了我一个好主意,让我很开心。谢谢老兄!
  • 我很确定您也可以使用 View.GONE 而不是 View.INVISIBLE
  • 我没有尝试过,但 View.GONE “不会占用任何空间用于布局目的”,所以我不确定这是否可行。我仍然希望它在那里,只是不可见。

标签: android opacity seekbar


【解决方案1】:

已修复,两步流程。所以在 SeekBar 的 xml 中,我添加了这一行以使进度条不可见:

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

在代码中,我添加了这一行来使拇指不可见:

opacitySeekBar.getThumb().mutate().setAlpha(0);

【讨论】:

  • 需要指出,像这样 android:backgroundTint="#00ffffff" android:progressTint="#00ffffff" 的搜索栏设置背景和进度不适用于所有设备;所以使用这个答案代码。
【解决方案2】:
<SeekBar
        ...
        android:alpha="0"
        android:background="@null"
        ... />

【讨论】:

  • 虽然这段代码可以回答问题,但最好包含一些上下文,解释如何它的工作原理和何时 i> 使用它。从长远来看,纯代码的答案没有用处。
  • 我认为代码是不言自明的:只需将这两行添加到您的 SeekBar 视图中。如果您想了解这些属性的作用,请阅读 Android 文档。
猜你喜欢
  • 1970-01-01
  • 2013-11-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-07-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多