VideoView 获取当前播放时间

来源:互联网 发布:传智播客 c语言笔记 编辑:程序博客网 时间:2024/06/16 18:52

VideoView 获取当前播放时间

最近在做视频,遇到这么个需求,播放视频中途退出时候记录当前播放的时间,播放视频,最简单的就是VideoView了,但是,官方并没有提供获取当前播放时间的方法,只有个getCurrentPosition()方法,可以获取当前播放的进度。
一般用VideoView时候都会配合MediaController来使用,MediaController就带有显示当前时间和总时间的功能。于是我就通过查看MediaController的源码,找到了如何实现VideoView获取当前时间的方法。

下面直接贴实现的方法吧
//将长度转换为时间StringBuilder mFormatBuilder;Formatter mFormatter;mFormatBuilder = new StringBuilder();mFormatter = new Formatter(mFormatBuilder, Locale.getDefault());    private String stringForTime(int timeMs) {        int totalSeconds = timeMs / 1000;        int seconds = totalSeconds % 60;        int minutes = (totalSeconds / 60) % 60;        int hours   = totalSeconds / 3600;        mFormatBuilder.setLength(0);        if (hours > 0) {            return mFormatter.format("%d:%02d:%02d", hours, minutes, seconds).toString();        } else {            return mFormatter.format("%02d:%02d", minutes, seconds).toString();        }    }

这个就是获取当前时间的方法了

String time=stringForTime(VideoView.getCurrentPosition());这样就可以通过videoview获取当前播放的时间了

by Lake

0 0
原创粉丝点击