点击后退按钮两次退出活动

问题:

最近我在很多Android应用和游戏中注意到这种模式:点击后退按钮“退出”应用程序时,Toast会出现类似“请再次点击退出”的消息。
我想知道,随着我越来越多的看到它,一个内置的功能,你可以以某种方式访问​​一个活动?我已经看了许多类的源代码,但似乎没有找到任何关于这个的代码。
当然,我可以考虑几种方式来实现相同的功能(最简单的可能是在活动中保持一个布尔值,表示用户是否已经点击了一次…),但我想知道是否有一些已经在这里。
 编辑:由于@LAS_VEGAS提到,传统意义上我并不意味着“退出”。 (即终止)我的意思是“回到在应用程序启动活动启动之前打开的任何内容”,如果这是有道理的:)

回答:

boolean doubleBackToExitPressedOnce = false;

@Override
public void onBackPressed() {
    if (doubleBackToExitPressedOnce) {
        super.onBackPressed();
        return;
    }

    this.doubleBackToExitPressedOnce = true;
    Toast.makeText(this, "Please click BACK again to exit", Toast.LENGTH_SHORT).show();

    new Handler().postDelayed(new Runnable() {

        @Override
        public void run() {
            doubleBackToExitPressedOnce=false;                       
        }
    }, 2000);
} 

我认为这个处理程序有助于在2秒后重置变量。

 
 
Code问答: http://codewenda.com/topics/python/
Stackoverflow: Clicking the back button twice to exit an activity

*转载请注明本文链接以及stackoverflow的英文链接

发表评论

电子邮件地址不会被公开。 必填项已用*标注

1 + 2 =