退出应用的2种方式

实现退出方式要activity的 boolean onKeyDown(int keyCode, KeyEvent event) 方法里实现

直接见代码吧:

方法一:

@Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        //退出方法一
        if(keyCode == KeyEvent.KEYCODE_BACK){
            AlertDialog.Builder dialog = new AlertDialog.Builder(this);
            dialog.setTitle("提示");
            dialog.setMessage("确定要残忍地退出应用?");
            dialog.setPositiveButton("确定",new DialogInterface.OnClickListener(){
                @Override
                public void onClick(DialogInterface dialog, int which) {
                   finish();
                }
            });
            dialog.setNegativeButton("取消",new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int which) {
                      return ;
                }
            });
            dialog.show();
        }

        return super.onKeyDown(keyCode, event);
    }

方法二:

private long existTime = 0;
    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        //退出方法二
        if(keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_DOWN){
           if(System.currentTimeMillis()-existTime > 2000){
               Toast.makeText(this,"再按一次退出应用",Toast.LENGTH_SHORT).show();
               existTime =  System.currentTimeMillis();
           }else {
               finish();
           }
           return true; //退出
        }
        return super.onKeyDown(keyCode, event);
    }
时间: 2024-10-10 14:56:07

退出应用的2种方式的相关文章

iOS 开发之 - 关闭键盘 退出键盘 的5种方式

iOS 开发之 - 关闭键盘 退出键盘 的5种方式 1.点击编辑区以外的地方(UIView) 2.点击编辑区域以外的地方(UIControl) 3.使用制作收起键盘的按钮 4.使用判断输入字元 5.关于键盘遮蔽的问题 1,点击编辑区以外的地方(UIView) 这是一种很直觉的方法,当不再需要使用虚拟键盘时,只要点击虚拟键盘和编辑区域外的地方,就可以将键盘收起,下面程式码是在 UIView 中内建的触碰事件方法函式,您可以参考 Touch Panel / 触碰萤幕 / 压力感应器的基本使用方式一文

IOS 关闭键盘 退出键盘 的5种方式(转)

IOS 关闭键盘 退出键盘 的5种方式 转自“http://blog.csdn.net/w88193363/article/details/24423635” 分类: iphone2014-04-24 17:03 2197人阅读 评论(0) 收藏 举报 1.点击编辑区以外的地方(UIView) 2.点击编辑区域以外的地方(UIControl) 3.使用制作收起键盘的按钮 4.使用判断输入字元 5.关于键盘遮蔽的问题 1,点击编辑区以外的地方(UIView) 这是一种很直觉的方法,当不再需要使用虚

Golang 退出 goroutine的几种方式

传统方式 在刚开始学go的时候,没用过Context包,那么退出携程的方式一般有这么几种 使用携 chan 发送消息通知,这种一般只适合单个goroutine func exit01() { done := make(chan bool) go func() { for { select { case <-done: fmt.Println("退出携程") return default: fmt.Println("监控中...") time.Sleep(1 *

iOS退出键盘的两种方式

1,可以让叫出键盘的那个控件,退出第一响应者; 例如:textField叫出的键盘,那么就可以调用textField.resignFirstResponder,达到谁叫出的键盘谁退回去 2,可以让叫出键盘的那个控件的父类控件退出键盘: 例如,textField叫出的键盘,它的父类控件是View,那么就调用:[View endEditing:YES]

C#退出的几种方式

1.this.Close();   只是关闭当前窗口,若不是主窗体的话,是无法退出程序的,另外若有托管线程(非主线程),也无法干净地退出: 2.Application.Exit();  强制所有消息中止,退出所有的窗体,但是若有托管线程(非主线程),也无法干净地退出: 3.Application.ExitThread(); 强制中止调用线程上的所有消息,同样面临其它线程无法正确退出的问题: 4.System.Environment.Exit(0);   这是最彻底的退出方式,不管什么线程都被强制

返回键捕获 应用程序退出的两种方式(转)

作为应用程序一个较好的用户体验应该是:在退出应用程序前询问用户是否真正退出?目前普遍做法是,一在退出前询问是否真正退出,二是连续按两下退出. 返回键捕获 应用程序退出的两种方式 实现上述两种应用退出方式需要在onkeyDown()来进行捕获返回键 在Activity中,如果需要动态注册广播官方文档建议在onResume()进行注册,在onPause()中取消注册.注册部分代码如下: 应用程序退出方式一:确认退出对话框 public boolean onKeyDown(int keyCode, K

winform中关闭退出和打开新窗口的几种方式

关闭窗口,退出的两种方式:1.this.Close();//关闭当前窗口2.Application.Exit();//关闭所有窗口,退出应用程序 打开窗口的三种方式:1.从一个窗口打开另一个窗口新窗口对象.show()2.从一个窗口打开另一个对话框新窗口对象.showDialog()3.在一个窗口内部打开另一个窗口(MDI父窗体) 1)先设置父窗口属性IsMdiContainer 为True 2)new 一个新窗口对象后,新窗口对象.MdiParent = this; 3)新窗口对象.Show(

Java并发编程:线程间协作的两种方式:wait、notify、notifyAll和Condition

在前面我们将了很多关于同步的问题,然而在现实中,需要线程之间的协作.比如说最经典的生产者-消费者模型:当队列满时,生产者需要等待队列有空间才能继续往里面放入商品,而在等待的期间内,生产者必须释放对临界资源(即队列)的占用权.因为生产者如果不释放对临界资源的占用权,那么消费者就无法消费队列中的商品,就不会让队列有空间,那么生产者就会一直无限等待下去.因此,一般情况下,当队列满时,会让生产者交出对临界资源的占用权,并进入挂起状态.然后等待消费者消费了商品,然后消费者通知生产者队列有空间了.同样地,当

宿主机为linux、windows分别实现VMware三种方式上网(转)

一.VMware三种方式工作原理1 Host-only连接方式  让虚机具有与宿主机不同的各自独立IP地址,但与宿主机位于不同网段,同时为宿主主机新增一个IP地址,且保证该IP地址与各虚机IP地址位于同一网段.最终结果是新建了一个由所有虚机与宿主主机所构成的局域网,但该局域网与宿主主机本身所处的现有局域网是相互独立的,如果不做额外路由设置,这两个局域网之间不会连通,因此新建的局域网可以认为是一个单独从属于当前宿主主机的私有网络,其成员为当前宿主主机和相关的所有虚机,这也是Host-only命名的