你好,我正在制作拳击倒计时,我有在每一轮结束和开始时播放的戒指。我想制作“结束”按钮,但是当我像下面这样使用 Intent 时,我会转到以前的活动,但 mp3 文件仍在后台工作。如何在后台没有任何mp3和任务的情况下结束所有任务并转到之前的活动?
btn1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
AlertDialog.Builder dialog=new AlertDialog.Builder(Main3Activity.this);
dialog.setMessage("Czy napewno chcesz wyjść z trenignu?");
dialog.setPositiveButton("Tak", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Intent intent=new Intent(Main3Activity.this, Main5Activity.class);
startActivity(intent);
}
});
dialog.setNegativeButton("Nie", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
}
});
AlertDialog dialogg=dialog.create();
dialogg.show();
}
});`
答案 0 :(得分:0)
使用 HTML DOM removeEventListener() 方法
btn1.removeEventListener("click", function(){});
见:https://www.w3schools.com/JSREF/met_element_removeeventlistener.asp
答案 1 :(得分:0)
你的问题在我看来不完整或不正确。
如果您想从 Activity 堆栈中转到上一个 Activity,那么您不应该使用 Intent 来启动上一个 Activity,而应该结束当前 Activity。
如果您想在用户未与 Main3Activity 交互或 Main3Activity 对用户不可见时停止播放铃声。那么最好的做法是在 Main3activity 的 onStop() 方法中写一段代码来检查负责播放声音的对象并安全地调用 stop 或销毁该对象。
答案 2 :(得分:0)
只需完成可以破坏活动实例以及在该特定活动上运行的所有内容的活动。只需在 startActivity 之后写这一行
finish();