gpt4 book ai didi

java - 双击退出应用程序时出现问题

转载 作者:行者123 更新时间:2023-11-30 03:08:45 24 4
gpt4 key购买 nike

所以我在我的主 Activity 上实现了双击退出,如果我进入设置 Activity 或游戏 Activity ,它会正常退出。但是,如果我进入 mainactivity --> gameactivity --> gameoveractivity 然后按回它会启动 mainactivity 正常但然后双击只会返回 gameoveractivity 并且我不确定为什么当我从 gameoveractivity 启动 mainactivity 时调用完成。

主屏幕 Activity :

// button listeners
playButton.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View arg0) {
Intent gameActivityIntent = new Intent(MainScreenActivity.this, GameActivity.class);
startActivity(gameActivityIntent);
overridePendingTransition(R.anim.righttocenter, R.anim.centertoleft);
finish();
}

});

settingsButton.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
Intent settingsActivityIntent = new Intent(MainScreenActivity.this, SettingsActivity.class);
MainScreenActivity.this.startActivity(settingsActivityIntent);
overridePendingTransition(R.anim.righttocenter, R.anim.centertoleft);
}

});

游戏 Activity :

// handle hardware back button
@Override
public void onBackPressed() {
Intent mainScreenActivityIntent = new Intent(GameActivity.this, MainScreenActivity.class);
startActivity(mainScreenActivityIntent);
overridePendingTransition(R.anim.lefttocenter, R.anim.centertoright);
finish();
}

处理游戏结束 Activity 的逻辑代码:

if (weight.getBounds().intersect(player.getBounds())) {
timer.cancel();
gameTimer.cancel();
player.setTouched(false);
save(score, time);
Intent gameOverIntent = new Intent(this.getContext(), GameOverActivity.class);
this.getContext().startActivity(gameOverIntent);
((Activity) this.getContext()).finish();
}

游戏结束 Activity :

// handle hardware back button
@Override
public void onBackPressed() {
Intent mainScreenActivityIntent = new Intent(GameOverActivity.this, MainScreenActivity.class);
mainScreenActivityIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
GameOverActivity.this.startActivity(mainScreenActivityIntent);
overridePendingTransition(R.anim.lefttocenter, R.anim.centertoright);
finish();
}

编辑:设法通过添加以下内容来解决此问题:gameOverIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);在创建 gameoveractivityintent 后的游戏逻辑代码中。

最佳答案

设法通过添加以下内容来解决此问题:

gameOverIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 

在创建 gameoveractivityintent 后的游戏逻辑代码中。

关于java - 双击退出应用程序时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21331205/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com