2

当我在我的应用程序中按返回或主页时,它会隐藏,但 MediaPlayer 会继续运行。有没有办法知道这些按钮何时被按下并在关闭前停止播放?

4

3 回答 3

3

只需在媒体播放器调用的类中实现此方法...

@Override
    public boolean onKeyDown(int keyCode, KeyEvent event) 
    {
        if ((keyCode == KeyEvent.KEYCODE_BACK)) 
        { //Back key pressed
           //Things to Do
            if(mediaPlayer!= null)
            {
                mediaPlayer.stop();
                mediaPlayer=null;
            }
            finish();
            return true;
        }
        return super.onKeyDown(keyCode, event);
    }
于 2011-10-05T05:36:28.013 回答
2

onPause()您应该能够覆盖Activity. onPause()当你Activity被隐藏时会被调用,你可以在MediaPlayer那里暂停。

例如,

@Override
protected void onPause() {
    super.onPause(); // Don't forget this line
    myMediaPlayer.pause() // Or whatever the function is to pause it
}
于 2010-09-12T17:57:59.207 回答
1

不要忘记添加 super.onPause;如果你忘记它会导致FC。

于 2010-09-12T22:16:32.487 回答