当前位置: 首页 > 知识库问答 >
问题:

使用SeekBar和setProgress不会改变SeekBar的位置[重复]

胡鸿志
2023-03-14

我在片段中使用seekbar,需要将seekbar移动到不同的位置。但是,setProgress(xxx)不起作用。

如何以编程方式为SeekBar:public void onProgressChanged(SeekBar SeekBar,int progress,boolean fromUser)触发此方法?手动移动seekbar很好。

共有1个答案

陶唯
2023-03-14

这是ProgressBar中的一个Bug!

如果再次传递相同的值,setprogress(...)似乎不会触发对drawable的更新。但它也不会在最大值期间触发。所以更新丢失了。

为了解决这个问题,我只是在每次更新之前执行bar.setprogress(0)······这只是一个变通办法,但它对我来说正如预期的那样有效:

bar.setProgress(0); // call these two methods before setting progress.
bar.setMax(20);
bar.setProgress(20);
mSeekBar.post(new Runnable() {
        @Override
        public void run() {
            mSeekBar.setProgress(percentOfFullVolume);
        }
    });
 类似资料:
  • 我需要在我的应用程序中将我的与我的连接起来。 我通过xml设置SeekBar,如下所示: 并遵循这个SO答案来实现它。 这是我的代码: 该过程从方法开始。 seekBar操作正常,每秒递增一次。现在的问题是,它在歌曲结束之前就结束了。 我试着加上 在方法中,但这会导致条根本不移动。

  • 我想更改搜索栏的进度颜色和拇指颜色。我使用drawable更改进度颜色,但进度厚度已更改。有没有办法改变拇指和进度的颜色。 形象 我想像图像上的第二个一样改变默认的搜索栏的颜色。

  • 项目的问题形象: 嗨。我想知道这两个按钮的问题。首先,我强调了两个按钮。左键是减少按钮,右键是增加按钮。问题是...如果所有值都是最大值。单击增加按钮不会改变值。但是,如果我点击增加按钮两三次,然后点击减少按钮再次减少值,值不会改变。要减少值,我必须按增加按钮一样多的减少按钮。:( 当我第一次遇到这个问题时,我认为它是由OnClickListener的重叠调用引起的。因此,如果值为最大值,我试图避

  • 我正在使用AudioTrack制作Android MP3播放器应用程序。我不能在任何情况下使用MediaPlayer,我使用16位单声道和44100Hz。我听说方法可以使用类实现,但我不太清楚这一点。请帮帮我。

  • 问题内容: 我试图改变的进步,基于输入的号码中的,但由于某些原因值变为最大值和 我不能滑动的拇指。 我要实现的目标:如果 在70到190之间的任意位置输入值(包括两个数字),则将的进度更改为该值。 部分Java代码: The partial XML: 我将每个值加70,因为它SeekBar从0开始,但是我希望它从70开始。 该SeekBar是最大数和EditText在最大为好。 问题答案: etO

  • 主要内容:本节引言:,1.SeekBar基本用法,2.简单SeekBar定制:,本节小结:本节引言: 本节我们继续来学习Android的基本UI控件中的拖动条——SeekBar,相信大家对他并不陌生,最常见的 地方就是音乐播放器或者视频播放器了,音量控制或者播放进度控制,都用到了这个SeekBar,我们 先来看看SeekBar的类结构,来到官方文档:SeekBar 嘿嘿,这玩意是ProgressBar的子类耶,也就是ProgressBar的属性都可以用咯! 而且他还有一个自己的属性就是