应用程序没有关闭它,而是保持在同一屏幕上,而不是进入主屏幕?
public void onBackPressed() {
Toast.makeText(getBaseContext(), "Bye Bye Have a nice day!", Toast.LENGTH_SHORT).show();
onDestroy();
}
将onDestroy();
替换为super.onBackPressed();
onDestroy()
是"活动"的生命周期方法之一,您不应该像这样在代码中使用它。Android操作系统会在需要时调用它,它不打算在您的代码中使用。
当您需要完成"活动"时,可以使用其finish()
方法。不过,在您的情况下,您会覆盖默认情况下完成"活动"的方法Activity#onBackPressed()
;因此,我们可以使用基类中的版本来执行其职责。
OnDestroy()
是活动的回调方法,不应手动调用。要退出您的活动,即要完成活动,您需要致电
finish();
方法。调用finish()将依次调用onDestroy()回调方法,如果有,您可以在该方法中处理任何收尾工作。
所以你的代码可能是这样的:
public void onBackPressed() {
Toast.makeText(getBaseContext(), "Bye Bye Have a nice day!", Toast.LENGTH_SHORT).show();
finish(); }
尝试
this.finishAffinity();
而不是
onDestroy();
这将结束您的应用程序