全部博文(131)
分类: Java
2011-11-17 08:22:53
package lau.com;
import java.io.IOException;
import android.app.Activity;
import android.media.MediaPlayer;
import android.media.MediaPlayer.OnCompletionListener;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ImageButton;
import android.widget.TextView;
public class AndroidPractice extends Activity {
/** Called when the activity is first created. */
private TextView mTextView = null;
// private Button mButton1 = null;
// private Button mButton2 = null;
// private Button mButton3 = null;
private boolean bIsPause = false;
private boolean bIsPlaying = false;
private boolean bIsRelease = false;
private ImageButton mStartImageButton = null;
private ImageButton mStopImageButton = null;
private ImageButton mPauseImageButton = null;
private MediaPlayer mMediaPlayer = null;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mTextView = (TextView)findViewById(R.id.tv);
mStartImageButton = (ImageButton)findViewById(R.id.start_btn);
mStopImageButton = (ImageButton)findViewById(R.id.stop_btn);
mPauseImageButton = (ImageButton)findViewById(R.id.pause_btn);
mStartImageButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
if(false == bIsPlaying) {
bIsPlaying = true;
bIsRelease = false;
mMediaPlayer = MediaPlayer.create(getApplicationContext(), R.raw.avil);
try {
mMediaPlayer.prepare();
System.out.println("prepare");
} catch (IllegalStateException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
mMediaPlayer.start();
mTextView.setText("Playing...");
}
mMediaPlayer.setOnCompletionListener(new OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
// TODO Auto-generated method stub
mTextView.setText("Stop");
mMediaPlayer.release();
}
});
}
});
mStopImageButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
if(false == bIsRelease) {
mMediaPlayer.stop();
mMediaPlayer.release();
bIsRelease = true;
}
bIsPlaying = false;
mTextView.setText("Stop...Press Play to Start...");
}
});
mPauseImageButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
if(null != mMediaPlayer) {
if(false == bIsRelease) {
if(false == bIsPause) {
bIsPause = true;
mTextView.setText("Pause...Press Again To Playing");
mMediaPlayer.pause();
} else {
bIsPause = false;
mMediaPlayer.start();
mTextView.setText("Playing...");
}
}
}
}
});
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
if(keyCode == KeyEvent.KEYCODE_BACK) {
mMediaPlayer.release();
}
return super.onKeyDown(keyCode, event);
}
}