Android双击返回键(Back)退出应用程序

来源:互联网 发布:龙腾管家淘宝客多少钱 编辑:程序博客网 时间:2024/05/16 07:21


实现原理:

双击退出程序的原理无非就是设置一个退出标识(询问是否退出),如果改变了这个标识(确认退出),则再次点击时立马退出,如果规定时间内没有退出,则延时重置这个标识(不退出)。
作者: woider
链接:http://www.imooc.com/article/7135
来源:慕课网
本文原创发布于慕课网 ,转载请注明出处,谢谢合作!
双击退出程序的原理无非就是设置一个退出标识(询问是否退出),如果改变了这个标识(确认退出),则再次点击时立马退出,如果规定时间内没有退出,则延时重置这个标识(不退出)。
作者: woider
链接:http://www.imooc.com/article/7135
来源:慕课网
本文原创发布于慕课网 ,转载请注明出处,谢谢合作!
双击退出程序的原理无非就是设置一个退出标识(询问是否退出),如果改变了这个标识(确认退出),则再次点击时立马退出,如果规定时间内没有退出,则延时重置这个标识(不退出)。
作者: woider
链接:http://www.imooc.com/article/7135
来源:慕课网
本文原创发布于慕课网 ,转载请注明出处,谢谢合作!
双击退出应用程序无非就是一个设置一个退出标识(询问是否退出),如果改变了这个标识(确认退出),则再次点击时立刻退出,如果规定时间内没有退出,则延时重置这个标识(不退出)。


延时设置:

使用java api提供的Timer类,它能够执行定时任务,利用Timer就能过对标识进行延时重置。

Timer对象的schedule()方法需要一个 TimerTask 对象和一个时间长度(毫秒)作为参数。TimerTask 对象需要重写它的 run( )方法,当 Timer 执行延时任务时,则会执行 TimerTask 的 run( ) 方法。

Timer 对象的 schedule( ) 方法需要一个 TimerTask 对象和一个时间长度(毫秒)作为参数。TimerTask 对象需要重写它的 run( )方法,当 Timer 执行延时任务时,则会执行 TimerTask 的 run( ) 方法。
作者: woider
链接:http://www.imooc.com/article/7135
来源:慕课网
本文原创发布于慕课网 ,转载请注明出处,谢谢合作!
Timer 对象的 schedule( ) 方法需要一个 TimerTask 对象和一个时间长度(毫秒)作为参数。TimerTask 对象需要重写它的 run( )方法,当 Timer 执行延时任务时,则会执行 TimerTask 的 run( ) 方法。
作者: woider
链接:http://www.imooc.com/article/7135
来源:慕课网
本文原创发布于慕课网 ,转载请注明出处,谢谢合作!

退出代码:(在Activity中添加)


public class MainActivity extends AppCompatActivity {    private Context context;   //上下文对象    private boolean quit = false; //设置退出的标识    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        context = getApplicationContext();    }    @Override    public void onBackPressed() {        if (quit == false){     //询问退出程序            Toast.makeText(context, "再按一次退出程序", Toast.LENGTH_SHORT).show();            new Timer(true).schedule(new TimerTask() {      //启动定时任务                @Override                public void run() {                    quit = false;   //重置退出标识                }            } , 2000);  //延时2秒执行            quit = true;        }else {     //确认退出程序            super.onBackPressed();            finish();        }    }}

本文转载自慕课网,原文地址:http://www.imooc.com/article/7135

1 0
原创粉丝点击