Android按两次退出键退出

实现思路1:时间差

    private long firstTime=0;

    @Override
    public void onBackPressed() {
        long secondTime=System.currentTimeMillis();
        if(secondTime-firstTime>2000){
            Toast.makeText(this,"再按一次退出键退出",Toast.LENGTH_SHORT).show();
            firstTime=secondTime;
        }else{
            super.onBackPressed();
        }
    }```

实现思路2:开启线程,延时处理
private boolean canExit;

private Handler handler=new Handler();

@Override
public void onBackPressed() {
    if (canExit){
        super.onBackPressed();
    }else{
        Toast.makeText(this,"再按一次退出键退出",Toast.LENGTH_SHORT).show();
        canExit=true;
        handler.postDelayed(new Runnable() {
            @Override
            public void run() {
                canExit=false;
            }
        },2000);
    }
}```
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,678评论 25 708
  • Object C中创建线程的方法是什么?如果在主线程中执行代码,方法是什么?如果想延时执行代码、方法又是什么? 1...
    AlanGe阅读 1,805评论 0 17
  • 闷热的这个夏天,就像池塘里的青蛙转身一跳,不见了影子。 清凉的秋风悄悄地把小院儿里吹得色彩斑斓,热闹起...
    亮的记阅读 759评论 0 5
  • 最近两天内,似乎身边的好多人都有了要恋爱的迹象了。今天中午刚知道一个姐姐和她相处六年的男朋友结婚了,照片上满脸的幸...
    是李小脸喔阅读 625评论 5 0
  • 到我这个年龄阶段,如果还没结婚或者还没有男女朋友的,那么每天迎接最多就是别人抑或亲人的亲切的温厚或者严厉...
    李小当的哥哥阅读 252评论 0 0