packagecom.tsh.tshplayer;importjava.io.File;importjava.io.IOException;importandroid.app.Activity;importandroid.content.SharedPreferences.Editor;importandroid.media.AudioManager;importandroid.media.MediaPlayer;importandroid.media.MediaPlayer.OnCompletionListener;importandroid.os.Bundle;importandroid.view.Menu;importandroid.view.MenuItem;importandroid.view.View;importandroid.view.View.OnClickListener;importandroid.widget.Button;importandroid.widget.EditText;importandroid.widget.Toast;public class MainActivity extends Activity implementsOnClickListener {privateEditText et_music;privateButton bt_play, bt_pause, bt_stop, bt_replay;privateMediaPlayer player;
@Overrideprotected voidonCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
et_music=(EditText) findViewById(R.id.et_music);
bt_play=(Button) findViewById(R.id.bt_play);
bt_pause=(Button) findViewById(R.id.bt_pause);
bt_stop=(Button) findViewById(R.id.bt_stop);
bt_replay=(Button) findViewById(R.id.bt_replay);
bt_play.setOnClickListener(this);
bt_pause.setOnClickListener(this);
bt_stop.setOnClickListener(this);
bt_replay.setOnClickListener(this);
}//点击事件
@Overridepublic voidonClick(View v) {switch(v.getId()) {//播放
caseR.id.bt_play:
play();break;//暂停
caseR.id.bt_pause:
pause();break;//重播
caseR.id.bt_replay:
replay();break;//停止
caseR.id.bt_stop:
stop();break;
}
}//停止播放
private voidstop() {if(player!=null&&player.isPlaying()){
player.stop();
bt_play.setEnabled(true);
}
}//重播音乐
private voidreplay() {if(player!=null&&player.isPlaying()){
player.seekTo(0);
}
}//暂停音乐
private voidpause() {if(player!=null&&player.isPlaying()){
player.pause();
bt_pause.setText("继续");
}else if(bt_pause.getText().toString().trim().equals("继续")){
player.start();
bt_pause.setText("暂停");
}
}//播放音乐
private voidplay() {
String music=et_music.getText().toString().trim();
File file= newFile(music);if (file.exists() && file.length() > 0) {try{
player= newMediaPlayer();
player.setAudioStreamType(AudioManager.STREAM_MUSIC);
player.setDataSource(music);
player.prepare();
player.start();//设置按钮
bt_play.setEnabled(false);//音乐完成回调
player.setOnCompletionListener(newOnCompletionListener() {
@Overridepublic voidonCompletion(MediaPlayer mp) {
bt_play.setEnabled(true);
}
});
}catch(Exception e) {
e.printStackTrace();
Toast.makeText(this, "播放音乐失败", 0).show();
}
}else{
Toast.makeText(this, "音乐文件不存在", 0).show();
}
}
}