黑马程序员技术交流社区

标题: android 点击返回键退出程序的方法 [打印本页]

作者: lvjayj    时间: 2013-8-2 11:08
标题: 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);
    }



作者: 日后再说    时间: 2013-9-24 17:42
沙发我来坐
作者: 日后再说    时间: 2013-9-24 17:42
aaaaaaaaaaaaaaaaa
作者: 日后再说    时间: 2013-9-24 17:42
bbbbbbbbbbbbbbbbbb
作者: 日后再说    时间: 2013-9-24 17:43
cccccccccccccccccccccc
作者: 日后再说    时间: 2013-9-24 17:43
dddddddddddddddddddddddddd
作者: 日后再说    时间: 2013-9-24 17:43
eeeeeeeeeeeeeeeeeeeeeeeee
作者: 日后再说    时间: 2013-9-24 17:43
fffffffffffffffffffffffffffff
作者: 日后再说    时间: 2013-9-24 17:43
hhhhhhhhhhhhhhhhhhhhhhhhhhhh




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2