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

如何使用线程每秒更新Seekbar mp3进度?(包括代码/图片)Android

潘鸿文
2023-03-14

每当我用媒体播放器播放mp3时,我都试图让搜索栏更新并显示进度。音乐每次播放都很好,当mp3播放时,sikbar总是会卡到0位置。

我试着去理解这个答案,但它就是不起作用。。。android中的SeekBar和媒体播放器

我在主要活动中有这个代码

private Handler mHandler = new Handler();
MainActivity.this.runOnUiThread(new Runnable() {

        @Override
        public void run() {
            if (Assets.mediaPlayer != null) {
                int mCurrentPosition = Assets.mediaPlayer.getCurrentPosition() / 1000;
                if(OnionFragment.seekBar!= null) {
                    OnionFragment.seekBar.setProgress(mCurrentPosition);
                }
            }
            mHandler.postDelayed(this, 1000);
        }
    });

我有洋葱碎片

public static SeekBar seekBar;
seekBar = (SeekBar) rootView.findViewById(R.id.seekBar);

而在Onion Fragments的点击(播放按钮)我有

Assets.playMusicFile(MainActivity.items.get(MainActivity.selectedItem).getSongId(), true);
                if(Assets.mediaPlayer!=null) {
                    seekBar.setMax(Assets.mediaPlayer.getDuration());
                }

洋葱碎片立即被加载到主活动中,看起来像这样

共有1个答案

段干飞翮
2023-03-14

改变

seekBar.setMax(Assets.mediaPlayer.getDuration());

seekBar.setMax(Assets.mediaPlayer.getDuration()/1000);
 类似资料:
  • 问题内容: 基本上,我正在为外部登录系统执行AJAX请求,如何根据请求的长度来更新进度栏? 例如,请求需要 1.30s 至 1.40s的时间 才能完成,我如何根据特定的间隔更新进度条,例如每10ms进行10%的更新,等等,这是进度条的HTML布局 使用属性确定进度条的长度 想法是基本上让它看起来像是基于请求进行更新,因此当请求完成时,百分比栏已满 问题答案: 我认为这篇文章非常清楚 http://

  • 根据要求,我的代码应该将ZonedDateTime参数中的日期和OffSetTime参数中的时间附加到格式“yyyy-MM-dd-HH:MM:ss.SSSz”中。然而,我没能做到这一点 我用DateTimeFormatter尝试了各种方法,包括下面的方法。 我注意到:-代码在LocalDateTime抛出“java.time.DateTimeException:无法提取值:class java.t

  • 我用基本的图形用户界面创建了一个小画板程序。我使用了画图组件方法。我想每毫秒更新正在绘制的图形。这样,用户可以在释放鼠标点击之前看到他们将要绘制的内容。例如,如果我正在绘制一个矩形,我想在绘制矩形时看到它。如果你不明白我到底在说什么,打开微软油漆,点击矩形工具。画一个矩形。注意它是如何持续更新的,而不是在释放鼠标后。我想一定有办法让它每毫秒更新我的图形。做这件事最好的方法是什么?抱歉,如果这是一个

  • 问题内容: 以给定的速率安排一段Java代码的最简单方法是什么? 问题答案: 在Java 5+中,带有: 上面的方法是有利的。在Java 5之前,您使用和:

  • 本文向大家介绍如何利用pycharm进行代码更新比较,包括了如何利用pycharm进行代码更新比较的使用技巧和注意事项,需要的朋友参考一下 pycharm自带对两个文件比对更新模块,方便查找不同,进行修改替换。方法如下:   1.选择目标文件,右键选择compare with   2.选择对比文件   3.查看对比修改如图: 到此这篇关于如何利用pycharm进行代码更新比较的文章就介绍到这了,更

  • 问题内容: 我一直在玩React,并具有以下仅显示在屏幕上的时间组件: 从React的角度来看,使该组件每秒更新以重新绘制时间的最佳方法是什么? 问题答案: 您需要使用来触发更改,但是还需要在组件卸载时清除计时器,以防止它留下错误和内存泄漏: