我已将以下代码添加到我拥有的类中:
@Override
public void onBackPressed() {
// TODO Auto-generated method stub
super.onBackPressed();
/*
AlertDialog.Builder dialog = new AlertDialog.Builder(this);
dialog.setTitle("test");
dialog.setMessage("test 123");
dialog.setNeutralButton("OK", null);
dialog.create().show();
*/
finish();
}
我知道正在调用该方法,因为当我按下后退按钮时会显示警告对话框。然而,当我按下后,MediaPlayer继续播放,这将我带到上一个屏幕。
这是为什么?不应该完成()停止MediaPlayer?
答案 0 :(得分:1)
检查MediaPlayer
事件中onBackPressed()
是否正在播放。
试试如下:
@Override
public void onBackPressed() {
if( mediaPlayer.isPlaying() ) {
mediaPlayer.stop();
}
super.onBackPressed();
}
答案 1 :(得分:0)
finish();
完成你的活动,
您应该stop()
活动onPause()
方法中的onDestroy()
媒体播放器(并在{{1}}中发布)
答案 2 :(得分:0)
确定发生了这种情况,因为MediaPlayer
在后台服务中播放音乐,因此要停止播放音乐,您必须添加以下内容:
@Override
public void onBackPressed() {
// TODO Auto-generated method stub
super.onBackPressed();
if(mediaplayer.isPlaying())
mediaplayer.stop();
finish();
}
其中mediaplayer
是MediaPlayer
类的实例。
答案 3 :(得分:0)
试试这个:
public void onDestroy()
{
super.onDestroy();
activities.remove(this);
}
public static void finishAll()
{
for(Activity activity:activities)
activity.finish();
}
或者尝试在onPause()方法中添加finish方法,这可能会起作用...
希望这会有所帮助