2013-03-08 80 views
1

我有一个场景,我必须使用进度条显示某个级别,但根据设计,此进度条上也有一个像圆圈的拇指。如何让Seekbar不可触摸?

现在用户不应该通过触摸或使用按键来更改此栏的值。

“寻找”可在搜索栏中找到,但不在进度条中,但搜索栏可以捕捉焦点和触摸事件,但这种情况不应发生在我的情况中。

因此,为了处理焦点和使我的搜索栏“foussable = false”&“focussableInTouchMode = false”,但我该怎么做才能使它不可触摸几乎就像一个进度条?

+0

'setEnabled(false)'或XML等价物。 – 2013-03-08 13:38:33

+0

seekbar.setClickable(false)这是行不通的吗? – DjHacktorReborn 2013-03-08 13:40:40

+0

setEnabled(false)可以工作,但它也会改变seekbar的颜色。 – Ankit 2013-03-11 13:44:08

回答

0

你可以做的是,创建自定义seekbarwith以下两个属性,并调用启用(假)

机器人:progressDrawable = “@绘制/ progress_bar”

机器人:拇指=“@安卓:彩色/透明” //使拇指无形

,然后调用运行时

SeekBar.setEnabled(假)

和XML

的android:启用= “假”

3

另一种方法是调用setOnTouchListener并使用监听器总是返回false。请注意,此用户界面令用户感到困惑,因为您希望seekbar看起来像一个活动的,但不像一个活动的seekbar。对于UI一致性,使用setEnabled(false)更加一致,并且颜色不同,这是有原因的。