如何让以分和秒的音频的长度在android系统
int duration = mediaPlayer.getDuration();
textView = (TextView) findViewById(R.id.tvduration); textView.setText(duration);
以毫秒为单位的时间,如果没有持续可用( 例如,如果流媒体直播内容) ,返回-1。
这就是为什么你会从getDuration()
得到的持续时间以毫秒为单位。
你可以用它来获取的MediaPlayer
时间为字符串:
int duration = mediaPlayer.getDuration();
String time = String.format("%02d min, %02d sec",
TimeUnit.MILLISECONDS.toMinutes(duration),
TimeUnit.MILLISECONDS.toSeconds(duration) -
TimeUnit.MINUTES.toSeconds(TimeUnit.MILLISECONDS.toMinutes(duration))
);
然后当你在你的问题写:
TextView textView = (TextView) findViewById(R.id.tvduration);
textView.setText(duration);
非常感谢。你做了我的一天:) – ttoseeff
Ÿ你应该再次设置“持续时间”textView? –
public static String milliSecondsToTimer(long milliseconds) {
String finalTimerString = "";
String secondsString = "";
//Convert total duration into time
int hours = (int) (milliseconds/(1000 * 60 * 60));
int minutes = (int) (milliseconds % (1000 * 60 * 60))/(1000 * 60);
int seconds = (int) ((milliseconds % (1000 * 60 * 60)) % (1000 * 60)/1000);
// Add hours if there
if (hours == 0) {
finalTimerString = hours + ":";
}
// Pre appending 0 to seconds if it is one digit
if (seconds == 10) {
secondsString = "0" + seconds;
} else {
secondsString = "" + seconds;
}
finalTimerString = finalTimerString + minutes + ":" + secondsString;
// return timer string
return finalTimerString;
}
我的问题已在之前的消息中解决。所以谢谢你的回答。 – ttoseeff
持续时间显示了用这种方法毫秒,但我想显示时间的音频像15分钟:32秒 – ttoseeff
请先做一些研究你不知道如何将毫秒转换为秒或分钟? –