当我第一次单击我的按钮时,它没有任何问题地进入下一个 Activity ,但是当我按下后退按钮并再次单击相同的按钮时,应用程序崩溃了,这是我的代码,该错误位于按钮1上,第二个按钮运行良好没有声音
wc = MediaPlayer.create(this, R.raw.welcome);
btn1 = (Button)findViewById(R.id.button1);
btn2 = (Button)findViewById(R.id.button2);
Intent svc = new Intent(this,MyService.class);
startService(svc);
btn1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
wc.start();
// TODO Auto-generated method stub
Handler hd = new Handler();
hd.postDelayed(new Runnable() {
@Override
public void run() {
Intent ttrial = new Intent (MainActivity.this, SecondMain.class);
startActivity(ttrial);
ttrial.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
}
},3000 );
}
});
最佳答案
希望这对您有用。
从代码中删除此标志
ttrial.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
写下面的代码
Intent ttrial = new Intent (MainActivity.this, SecondMain.class);
startActivity(ttrial);
finish();
如果使用
Intent.FLAG_ACTIVITY_SINGLE_TOP
此标志,则如果 Activity 已存在于当前任务的顶部,则将不会创建可能导致问题的新实例。如果要使用此标志,请编写如下代码。
Intent ttrial = new Intent (MainActivity.this, SecondMain.class);
ttrial.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
startActivity(ttrial);
关于android - 如何修复按钮中的错误 Intent 和音效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59449805/