在做安卓应用是我们经常要判断用户对返回键的操作,一般为了防止误操作都是在用户连续按下两次返回键的时候提示用户是否退出应用程序。

第一种实现的基本原理就是,当按下BACK键时,会被onKeyDown捕获,判断是BACK键,则执行exit方法。
在exit方法中,会首先判断isExit的值,如果为false的话,则置为true,同时会弹出提示,并在2000毫秒(2秒)后发出一个消息,在Handler中将此值还原成false。如果在发送消息间隔的2秒内,再次按了BACK键,则再次执行exit方法,此时isExit的值已为true,则会执行退出的方法。
package com.gaolei.exitdemo;
import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.view.KeyEvent;
import android.widget.Toast;
public class MainActivity extends Activity {
// 定义一个变量,来标识是否退出
private static boolean isExit = false;
Handler mHandler = new Handler() {
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
isExit = false;
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
exit();
return false;
}
return super.onKeyDown(keyCode, event);
}
private void exit() {
if (!isExit) {
isExit = true;
Toast.makeText(getApplicationContext(), "再按一次退出程序",
Toast.LENGTH_SHORT).show();
// 利用handler延迟发送更改状态信息
mHandler.sendEmptyMessageDelayed(0, 2000);
} else {
finish();
System.exit(0);
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# Android点击两次返回键退出
# Android点击返回键退出
# Android返回键退出
# Android开发实现Fragment监听返回键事件功能的方法
# Android 拦截返回键事件的实例详解
# Android 实现按两次返回键退出程序(两种方法)
# android PopupWindow点击外部和返回键消失的解决方法
# Android使alertDialog.builder不会点击外面和按返回键消失的方法
# Android开发返回键明暗点击效果的实例代码
# 按下
# 是在
# 两次
# 并在
# 弹出
# 将此
# 则会
# 第一种
# 为了防止
# 大家多多
# 再按
# 已为
# 基本原理
# 按了
# 应用程序
# 同时会
# 发送消息
# class
# java
# os
相关文章:
东莞市网站制作公司有哪些,东莞找工作用什么网站好?
如何高效完成独享虚拟主机建站?
如何快速生成橙子建站落地页链接?
深圳网站制作案例,网页的相关名词有哪些?
黑客如何利用漏洞与弱口令入侵网站服务器?
常州企业网站制作公司,全国继续教育网怎么登录?
香港服务器网站搭建教程-电商部署、配置优化与安全稳定指南
如何快速辨别茅台真假?关键步骤解析
如何快速搭建响应式可视化网站?
简单实现Android文件上传
浙江网站制作公司有哪些,浙江栢塑信息技术有限公司定制网站做的怎么样?
手机怎么制作网站教程步骤,手机怎么做自己的网页链接?
c# F# 的 MailboxProcessor 和 C# 的 Actor 模型
详解免费开源的.NET多类型文件解压缩组件SharpZipLib(.NET组件介绍之七)
制作表格网站有哪些,线上表格怎么弄?
济南网站建设制作公司,室内设计网站一般都有哪些功能?
如何选择最佳自助建站系统?快速指南解析优劣
电脑免费海报制作网站推荐,招聘海报哪个网站多?
中山网站推广排名,中山信息港登录入口?
建站主机功能解析:服务器选择与快速搭建指南
建站之星备案流程有哪些注意事项?
阿里云网站搭建费用解析:服务器价格与建站成本优化指南
自助网站制作软件,个人如何自助建网站?
php条件判断怎么写_ifelse和switchcase的使用区别【对比】
开封网站制作公司,网络用语开封是什么意思?
如何自己制作一个网站链接,如何制作一个企业网站,建设网站的基本步骤有哪些?
香港服务器网站生成指南:免费资源整合与高速稳定配置方案
设计网站制作公司有哪些,制作网页教程?
,sp开头的版面叫什么?
如何选择网络建站服务器?高效建站必看指南
成都网站制作价格表,现在成都广电的单独网络宽带有多少的,资费是什么情况呢?
如何在云虚拟主机上快速搭建个人网站?
香港服务器网站测试全流程:性能评估、SEO加载与移动适配优化
威客平台建站流程解析:高效搭建教程与设计优化方案
深圳企业网站制作设计,在深圳如何网上全流程注册公司?
金*站制作公司有哪些,金华教育集团官网?
新网站制作渠道有哪些,跪求一个无线渠道比较强的小说网站,我要发表小说?
如何高效搭建专业期货交易平台网站?
python的本地网站制作,如何创建本地站点?
广东企业建站网站优化与SEO营销核心策略指南
杭州银行网站设计制作流程,杭州银行怎么开通认证方式?
如何快速查询网站的真实建站时间?
制作假网页,招聘网的薪资待遇,会有靠谱的吗?一面试又各种折扣?
建站之星好吗?新手能否轻松上手建站?
网站规划与制作是什么,电子商务网站系统规划的内容及步骤是什么?
在线ppt制作网站有哪些,请推荐几个好的课件下载的网站?
建站之星如何助力企业快速打造五合一网站?
如何在IIS7中新建站点?详细步骤解析
北京网站制作的公司有哪些,北京白云观官方网站?
南京网站制作费用,南京远驱官方网站?
*请认真填写需求信息,我们会在24小时内与您取得联系。