MediaPlayer mediaPlayer;
onCreate(...)
{
....
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
if(mediaPlayer.isPlaying())
{
mediaPlayer.stop();
}
return true;
}
return super.onKeyDown(keyCode, event);
}
public void SomeOtherFunction()
{
mediaPlayer = new MediaPlayer();
//play for example
}
這個例子對我很好。希望這是幫助你
它是停止/上後退按鈕按下啓動時
MediaPlayer mediaPlayer;
int flag =0;
onCreate(...)
{
....
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
if(flag==1)
{
if(mediaPlayer.isPlaying())
{
mediaPlayer.stop();
flag=0;
}
return true;
}
else if(flag==0)
{
mediaPlayer.start();//or play.. forgot
flag=1;
return true;
}
}
return super.onKeyDown(keyCode, event);
}
public void SomeOtherFunction()
{
mediaPlayer = new MediaPlayer();
//play for example and set flag to 1 // flag=1;
}
必須努力代碼..但是我沒有測試它。
感謝您的回覆,它的工作正常,阻止媒體播放器,但它不會從列表中返回。當我點擊後退按鈕時,你能幫助我怎麼回去嗎? – Shekhar 2011-03-08 04:56:47
雅後退按鈕是working.But我想要實現的home鍵 @覆蓋 \t公共布爾的onkeydown(INT的keyCode,KeyEvent的事件) \t { \t相同的代碼,如果(的keyCode == KeyEvent.KEYCODE_BACK) \t { \t \t \t \t if(mediaPlayer.isPlaying()) mediaPlayer.stop(); 返回false; } \t} \t否則如果(鍵代碼== KeyEvent.KEYCODE_HOME) \t \t { \t \t \t如果(mediaPlayer.isPlaying()) \t \t \t { \t \t \t \t mediaPlayer.stop(); \t \t \t \t return false; \t \t \t} \t \t} \t其他 \t { \t \t返回FALSE; \t} \t return super.onKeyDown(keyCode,event); \t} – Shekhar 2011-03-08 05:18:46