private void exitDialog()
{
AlertDialog.Builder aa=new AlertDialog.Builder(this);
aa.setTitle("消息提示");
aa.setMessage("确认退出?");
aa.setIcon(R.drawable.icon);
aa.setPositiveButton("确定",new DialogInterface.OnClickListener() { @Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
MainActivity.this.finish();
}
});
aa.setNegativeButton("取消", null);
aa.create();
aa.show();
} @Override
public boolean onKeyDown(int keyCode, KeyEvent event)
{
if(keyCode == KeyEvent.KEYCODE_BACK)
{
exitDialog();
}
return true; }

现在还流行连续按两次返回退出,代码:

    private static boolean isExit=false;
private static boolean hasTask=false;
Timer tExit=new Timer();
TimerTask task=new TimerTask() { @Override
public void run() {
// TODO Auto-generated method stub
isExit=false;
hasTask=true;
}
}; @Override
public boolean onKeyDown(int keyCode, KeyEvent event)
{
if(keyCode == KeyEvent.KEYCODE_BACK)
{
//exitDialog();
if(isExit==false)
{
isExit=true;
Toast.makeText(this, "再按一次退出程序", Toast.LENGTH_SHORT).show();
if(!hasTask) {
tExit.schedule(task, 2000);
}
}
else
{
finish();
System.exit(0);
} }
//return true;
return false; }

android开发:退出程序(对话框、两次返回键退出)的更多相关文章

  1. 【转】Android实现点击两次返回键退出

    在做安卓应用是我们经常要判断用户对返回键的操作,一般为了防止误操作都是在用户连续按下两次返回键的时候提示用户是否退出应用程序. 第一种实现的基本原理就是,当按下BACK键时,会被onKeyDown捕获 ...

  2. Android Toast 提示按两次返回键退出

    public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceS ...

  3. Android 应用按两下返回键退出应用程序

    在android应用开发中,有时候应用会用到按两下返回键退出应用的功能,今天介绍一下这个功能,直接上代码: @Override public boolean dispatchKeyEvent(KeyE ...

  4. Flutter点击两次返回键退出APP

    在APP中一些页面为了防止用户操作失误点击到返回键导致退出APP,可以设置其一定时间内点击两次返回键才允许退出APP,完成这个功能可以通过WillPopScope和SystemNavigator.po ...

  5. Android Studio 点击两次返回键,退出APP

    该功能的实现没有特别复杂,主要在onKeyDown()事件中实现,直接上代码,如下: //第一次点击事件发生的时间 private long mExitTime; /** * 点击两次返回退出app ...

  6. MUI 按两次返回键退出应用 及 地理位置获取

    <span style="font-size:14px;"><span style="font-size:14px;"> mui.plu ...

  7. android 按两次返回键退出应用

    private long mExitTime; @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if (keyCod ...

  8. android连续点击两次返回键退出代码

    private long exitTime = 0; @Overridepublic boolean onKeyDown(int keyCode, KeyEvent event) { if(keyCo ...

  9. Android中AlertDialog对话框禁止按[返回键]或[搜索键]

    alertDialog.setOnKeyListener(new DialogInterface.OnKeyListener() { @Override public boolean onKey(Di ...

随机推荐

  1. Nginx 502错误:upstream sent too big header while reading response header from upstream

    原因: 在使用Shiro的rememberMe功能时,服务器返回response的header部分过大导致. 解决方法: https://stackoverflow.com/questions/238 ...

  2. hdu 5877(树状数组+dfs)

    Weak Pair Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 262144/262144 K (Java/Others)Total ...

  3. 洛谷P1803凌乱的yyy 题解

    题目传送门 这道题也是贪心思想.先排序一遍(按照结束的时间排)在进行扫描,满足条件的直接保存,增加ans,最后输出即可. #include<bits/stdc++.h> using nam ...

  4. jmeter------reponse报错”Unknown column 'XXXXX' in 'where clause'“

    一.问题描述 jmeter添加了与数据库mysql的连接,编写完JDBC Request之后,运行提示报错”Unknown column 'be7f5b6e750bb6becf855386338644 ...

  5. 字典dict常用方法

    字典是列表中常用的方法,我们经常处理字典,字典嵌套,很多复杂的操作都来自于基础,只是改变了样式而已,本质是不变的.下面来看看字典中常用的功能都有那些:     1.clear(self) def cl ...

  6. Typecho-反序列化漏洞学习

    目录 Typecho-反序列化漏洞学习 0x00 前言 0x01 分析过程 0x02 调试 0x03 总结 0xFF 参考 Typecho-反序列化漏洞学习 0x00 前言 补丁: https://g ...

  7. lr_start_transaction/lr_end_transaction事物组合

    lr_start_transaction/lr_end_transaction事物组合 总结一下: lr_start_transaction与lr_end_transaction 为使用最多的事物创造 ...

  8. bzoj 1131 简单树形dp

    思路:随便想想就能想出来啦把...  卡了我一个vector... #include<bits/stdc++.h> #define LL long long #define fi firs ...

  9. bzoj 1176 CDQ分治

    思路:首先我们将问题转换一下,变成问在某个点左下角的权值和,那么每一个询问可以拆成4的这样的询问,然后 进行CDQ 分治,回溯的时候按x轴排序,然后用树状数组维护y的值. #include<bi ...

  10. poj1606 Jugs(BFS)

    题目链接 http://poj.org/problem?id=1606 题意 有两个容量分别为ca,cb的杯子,可以向杯子里倒水,将杯子里的水倒空,将一个杯子里的水倒到另一个杯子里,求怎样倒才能使其中 ...