android 中back两种退出app的方法
来源:互联网 发布:咬人猫年龄 知乎 编辑:程序博客网 时间:2024/05/20 03:05
连续点击退出app
- 思路:双击时间差小于某个定值触发事件
- 代码:
public class MainActivity extends AppCompatActivity { private long lastTime=0; //记录上次点击的时间 @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&&event.getAction()==KeyEvent.ACTION_DOWN){ if((System.currentTimeMillis()-lastTime)>2000){ Toast.makeText(MainActivity.this, "在按一次退出程序", Toast.LENGTH_SHORT).show(); lastTime=System.currentTimeMillis(); }else { System.exit(0); } return true; } return super.onKeyDown(keyCode, event); }}
单击弹出dialog退出app
- 单击back弹出dialog,强制禁止back取消dialog的消失
public class Main2Activity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main2); } @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_BACK) { AlertDialog exitDialog = new AlertDialog.Builder(this).create(); exitDialog.setTitle("系统提示"); exitDialog.setMessage("你确定要退出吗"); exitDialog.setButton(DialogInterface.BUTTON_POSITIVE, "确定", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { finish(); } }); exitDialog.setButton(DialogInterface.BUTTON_NEGATIVE, "取消", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { Toast.makeText(Main2Activity.this, "我已经取消了", Toast.LENGTH_SHORT).show(); } }); //onKeyListener用于设置监听手机back键的操作 exitDialog.setOnKeyListener(new DialogInterface.OnKeyListener() { @Override public boolean onKey(DialogInterface dialog, int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_BACK) { return true;// false时dialog会消失 } return true; } }); exitDialog.show(); } return super.onKeyDown(keyCode, event); }}
验证
以上两种方法全部经过试验,可以拿来使用
阅读全文
0 0
- android 中back两种退出app的方法
- Android点击两次back退出程序的两种方法
- Android 连续点击back button退出当前Activity的两种实现方法
- Android 双击back键退出应用的两种方式
- Android back键监听退出应用的两种方式
- Android中完全退出APP的方法
- Android 应用退出的两种方法
- android退出app的四种方法
- back键监听退出应用的两种方式
- Android实现点击两次back退出APP
- Android学习之---双击back退出app
- android 点击两次back 键退出app
- [常用]按back键退出实现“再按一次退出”的功能两中方式
- android按back键彻底退出应用程序的方法
- Android:Drawerlayout中back键直接退出的问题
- Android双击返回键退出Activity的两种方法
- 两种退出android程序全部activity的方法
- android返回键退出提示的两种方法
- 注册表读写
- [Leetcode] 165. Compare Version Numbers 解题报告
- python——刷票脚本
- CF 812 ABC
- 人脸识别方向论文笔记(2)-- Latent Factor Guided Convolutonal Neural Networks for Age-Invariant Face Recognition
- android 中back两种退出app的方法
- 第二章 操作文件和目录
- HTML内部文本的基本结构及注释
- react-native使用Swiper在安卓上不显示
- C#图像处理(剪切、合成、缩略)
- mac 下配置maven
- LC Binary-Search summary
- 【Java8源码分析】locks包-ReentrantLock
- Python-异常处理