html5 返回键-点击返回键

2023-08-29 0 8,622 百度已收录

在Android中,如果不按返回键,只需按一下返回键,程序就会直接退出,这是非常不人性化的。 只要按一下返回键,就可以避免这种情况。 窃听返回键常用的操作有两种。 一是按返回键时弹出对话框,询问用户是否退出程序; 另一种是双击返回键退出按钮。 由于弹出对话框会给用户带来比较麻烦的操作,因此这些方式在Android中已经逐渐被淘汰。

第一种方法是监听回车键,会弹出一个对话框。 代码如下:

 public boolean onKeyDown(int keyCode, KeyEvent event)  
    {  
        if (keyCode == KeyEvent.KEYCODE_BACK )  
        {  
            // 创建退出对话框  
            AlertDialog isExit = new AlertDialog.Builder(this).create();  
            // 设置对话框标题  
            isExit.setTitle("温馨提示");  
            // 设置对话框消息  
            isExit.setMessage("确定要退出吗?");  
            // 添加选择按钮并注册监听  
            isExit.setButton("确定", listener);  
            isExit.setButton2("取消", listener);  
            // 显示对话框  
            isExit.show();  
        }       
        return false;       
    }  
    /**监听对话框里面的button点击事件*/  
    DialogInterface.OnClickListener listener = new DialogInterface.OnClickListener()  
    {  
        public void onClick(DialogInterface dialog, int which)  
        {  
            switch (which)  
            {  
            case AlertDialog.BUTTON_POSITIVE:// "确认"按钮退出程序  
                finish();  
                break;  
            case AlertDialog.BUTTON_NEGATIVE:// "取消"第二个按钮取消对话框  
                break;  
            default:  
                break;  
            }  
        }  
    };    

这样就可以窃听返回键。 当按下返回键时,会弹出一个对话框。 对话框上有确认和取消按钮。 按相应按钮执行退出程序或移除对话框的操作,只要添加到主Activity中即可。 这段代码可以实现这个功能。

第二种方法是监听回车键,双击回车键退出程序。 代码如下:

public boolean onKeyDown(int keyCode, KeyEvent event) {
        // TODO Auto-generated method stub
        if(keyCode == KeyEvent.KEYCODE_BACK)
        {  
            moveTaskToBack(false);
            exitBy2Click();     //调用双击退出函数
        }
        return false;
    }
    /**
     * 双击退出函数
     */
    private static Boolean isExit = false;
    private void exitBy2Click() {
        Timer tExit = null;
        if (isExit == false) {
            isExit = true; // 准备退出
            Toast.makeText(this, "再按一次退出程序", Toast.LENGTH_SHORT).show();
            tExit = new Timer();
            tExit.schedule(new TimerTask() {
                @Override
                public void run() {
                    isExit = false; // 取消退出
                }
            }, 2000); // 如果2秒钟内没有按下返回键,则启动定时器取消掉刚才执行的任务
        } else {
            finish();
            System.exit(0);
        }
    } 

窃听返回键。 当按下返回键时,将执行 exitBy2Click() 函数。 使用计时器来窃听两次返回键。 第一次按下返回键时,会弹出一个Toast。 提示“再按一次退出程序”html5 返回键html5 返回键,然后启动定时器。 如果2秒内没有再次按下返回键,则退出任务的计划将被取消。 如果在 2 秒内再次按下返回键,System. exit(0) 退出程序。

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

悟空资源网 html5 html5 返回键-点击返回键 https://www.wkzy.net/game/180708.html

常见问题

相关文章

官方客服团队

为您解决烦忧 - 24小时在线 专业服务