📚 开源资源分享——颜佐光的个人书架
✉️ 联系站长
书架 / Android / 语法

android 点击返回键退出程序的方法

2020-11-06 16:21 · 约 2,135 字 · 浏览 2,396 次语法

android 点击返回键退出程序的方法

第一种: 再按一次返回键退出程序

private long exitTime = 0;

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    if(keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_DOWN){   
        if((System.currentTimeMillis()-exitTime) > 2000){  
            Toast.makeText(getApplicationContext(), "再按一次退出程序", Toast.LENGTH_SHORT).show();                                
            exitTime = System.currentTimeMillis();   
        } else {
            finish();
            System.exit(0);
        }
        return true;   
    }
    return super.onKeyDown(keyCode, event);
}

或者

private long exitTime = 0;

@Override
public boolean dispatchKeyEvent(KeyEvent event) {
    if (event.getKeyCode() == KeyEvent.KEYCODE_BACK
        && event.getAction() == KeyEvent.ACTION_DOWN
        && event.getRepeatCount() == 0) {  
        if((System.currentTimeMillis()-exitTime) > 2000){  
            Toast.makeText(getApplicationContext(), "再按一次退出程序!", Toast.LENGTH_SHORT).show();                                
            exitTime = System.currentTimeMillis();   
        } else {
            finish();
            System.exit(0);
        }
        return true;   
    }

    return super.dispatchKeyEvent(event);
}

另外一种:点击返回键弹出确定窗体 选择退出

@Override
public boolean dispatchKeyEvent(KeyEvent event) {
    if (event.getKeyCode() == KeyEvent.KEYCODE_BACK
        && event.getAction() == KeyEvent.ACTION_DOWN
        && event.getRepeatCount() == 0) {            
        //详细的操作代码
        new AlertDialog.Builder(this)
            .setTitle("确定退出程序么")
            .setNegativeButton("取消", new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int which) {
                }
            })
            .setPositiveButton("确定", new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog, int whichButton) {
                    finish();//
                }
            }).show();
        return true;
    }
    return super.dispatchKeyEvent(event);
}
← 返回《Android》目录书架 →