我正在学习Android,并尝试制作多屏应用以使其更好。我有3个活动。
1) Main
2) Game
3) GameOver
Main具有游戏按钮,按下该按钮可启动游戏活动的意图。在计时器中的计时器结束后,我将意图的得分变量传递给GameOver Activity。
此流程工作正常。但是当我看到GameOver激活结果后按返回按钮时,该应用程序最小化。当我取消最小化应用程序时,它会显示“主要活动”屏幕(实际上是想要的,但没有最小化应用程序)。我在Game Activity中使用finish(),在其中我为GameOver调用Intent。
在日志中,出现以下错误:
D/OpenGLRenderer: endAllActiveAnimators on 0xb7d6e128 (RippleDrawable) with handle 0xb7877690
W/ViewRootImpl: Cancelling event due to no window focus: KeyEvent { action=ACTION_UP, keyCode=KEYCODE_BACK, scanCode=0, metaState=0, flags=0x68, repeatCount=0, eventTime=292244107, downTime=292244100, deviceId=-1, source=0x101 }
我创建了一个测试应用程序,以解决/理解具有3个活动和相同流程的此问题。在该基本活动应用中可以正常工作。但不在我的主应用程序中。我搜索发现它不是错误。没关系,但是我不希望按下后退按钮时我的应用程序最小化。有什么帮助吗?
最佳答案
从MainActivity中删除finish()。 (如果您有意提出“游戏活动”的意图。)