java - 如何获取媒体播放器持续时间的正确持续时间格式?

标签 java android

我正在尝试以 00:00:00 格式从正在播放的媒体播放器获取持续时间小时、分钟和秒。这是我到目前为止所拥有的。我几乎已经拥有了,但还不是 100%。

 public String convertDurationMillis(Integer getDurationInMillis){

    int getDurationMillis = getDurationInMillis

    String convertHours = String.format("%02d", TimeUnit.MILLISECONDS.toHours(getDurationMillis));
    String convertMinutes = String.format("%02d", TimeUnit.MILLISECONDS.toMinutes(getDurationMillis));
    String convertSeconds = String.format("%02d", TimeUnit.MILLISECONDS.toSeconds(getDurationMillis) -
            TimeUnit.MINUTES.toSeconds(TimeUnit.MILLISECONDS.toMinutes(getDurationMillis)));

    String getDuration = convertHours + ":" + convertMinutes + ":" + convertSeconds;

    return getDuration;

}

这是我的 TextView

myTV.setText(convertDurationMillis(mediaPlayer.getDuration());

只要音频持续时间小于一小时,它就可以正常工作。如果音频持续时间等于或超过一个小时,这就是我的结果...... 02:149:51。我该如何纠正这个问题?提前致谢!

最佳答案

没关系,我终于明白了!答案如下...

    public String convertDurationMillis(Integer getDurationInMillis){
    int getDurationMillis = getDurationInMillis;

    String convertHours = String.format("%02d", TimeUnit.MILLISECONDS.toHours(getDurationMillis)); 
    String convertMinutes = String.format("%02d", TimeUnit.MILLISECONDS.toMinutes(getDurationMillis) -
            TimeUnit.HOURS.toMinutes(TimeUnit.MILLISECONDS.toHours(getDurationMillis))); //I needed to add this part.
    String convertSeconds = String.format("%02d", TimeUnit.MILLISECONDS.toSeconds(getDurationMillis) -
            TimeUnit.MINUTES.toSeconds(TimeUnit.MILLISECONDS.toMinutes(getDurationMillis)));


    String getDuration = convertHours + ":" + convertMinutes + ":" + convertSeconds;

    return getDuration;

}

谢谢大家!

关于java - 如何获取媒体播放器持续时间的正确持续时间格式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56022744/

相关文章:

java - Java 中的撤消和重做操作事件

java - 最佳批量照片上传小程序

java - Mergesort 数组索引越界异常

android - 从 ActionBar 中删除应用程序图标和文本

android - 当在扩展对话框 Fragment 的 Fragment 中应用 onBackPressed 时

android - 特拉维斯安卓构建错误

java - 如何创建在soap header 中需要用户名/密码的soap服务

java - 将 SQL 查询结果写入 csv 失败 : uncomplete line

java - 当我从 android 访问 Java servlet 时,mysql 数据库没有更新

Android缩略图加载问题