我有一个在Eclipse中编码的音乐播放器应用程序。应用程序有按钮,如开始/暂停,下一首歌曲,上一首歌曲,混音器。我想添加前进和后退按钮,我怎样才能以最简单的方式进行操作?
谢谢大家。
答案 0 :(得分:5)
快进歌曲:
public void forwardSong() {
if (mPlayer != null) {
int currentPosition = mPlayer.getCurrentPosition();
if (currentPosition + seekForwardTime <= mPlayer.getDuration()) {
mPlayer.seekTo(currentPosition + seekForwardTime);
} else {
mPlayer.seekTo(mPlayer.getDuration());
}
}
}
回放歌曲:
public void rewindSong() {
if (mPlayer != null) {
int currentPosition = mPlayer.getCurrentPosition();
if (currentPosition - seekBackwardTime >= 0) {
mPlayer.seekTo(currentPosition - seekBackwardTime);
} else {
mPlayer.seekTo(0);
}
}
}
mPlayer是MediaPlayer的对象。
seekForwardTime和seekBackwardTime是两个变量来转发或回放定义的第二个歌曲。
private int seekForwardTime = 5 * 1000; // default 5 second
private int seekBackwardTime = 5 * 1000; // default 5 second
希望这会有所帮助......
答案 1 :(得分:2)
在android hive http://www.androidhive.info/2012/03/android-building-audio-player-tutorial/
中有一个简单的音乐播放器教程如链接中所示,创建前进和后退按钮并使用以下代码
btForward.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
// get current song position
int currentPosition = mp.getCurrentPosition();
// check if seekForward time is lesser than song duration
if(currentPosition + seekForwardTime <= mp.getDuration()){
// forward song
mp.seekTo(currentPosition + seekForwardTime);
}else{
// forward to end position
mp.seekTo(mp.getDuration());
}
}
});
For Backward
btBack.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
// get current song position
int currentPosition = mp.getCurrentPosition();
// check if seekBackward time is greater than 0 sec
if(currentPosition - seekBackwardTime >= 0){
// forward song
mp.seekTo(currentPosition - seekBackwardTime);
}else{
// backward to starting position
mp.seekTo(0);
}
}
});