Android 双击退出应用程序
Android 大约 1141 字双击退出程序
方式一:
private boolean isExit;
private Handler mHandler = new Handler() {
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
isExit = false;
}
};
@Override
public void onBackPressed() {
if (mFm.getBackStackEntryCount() != 0) {//添加fragment时会用到
super.onBackPressed();
return;
}
if (!isExit) {
isExit = true;
Toast.makeText(MainActivity.this, "再按一次退出程序", Toast.LENGTH_SHORT).show();
mHandler.sendEmptyMessageDelayed(0, 2000);
} else {
finish();
}
}
方式二:
private long currentBackPressedTime = 0;
// 退出间隔
private static final int BACK_PRESSED_INTERVAL = 2000;
//重写onBackPressed()方法,继承自退出的方法
@Override
public void onBackPressed() {
// 判断时间间隔
if (System.currentTimeMillis() - currentBackPressedTime > BACK_PRESSED_INTERVAL) {
currentBackPressedTime = System.currentTimeMillis();
Toast.makeText(this, "再按一次返回键退出程序", Toast.LENGTH_SHORT).show();
} else {
// 退出
super.onBackPressed();
}
}
退出到桌面
不是真实退出程序。
调用activity
的moveTaskToBack(boolean nonRoot);
方法。
moveTaskToBack(true);
阅读 2297 · 发布于 2019-04-09
————        END        ————
Give me a Star, Thanks:)
https://github.com/fendoudebb扫描下方二维码关注公众号和小程序↓↓↓

昵称:
随便看看
换一批
-
Safari 浏览器 white-space: pre 无效阅读 3219
-
JavaScript onstorage 监听本地存储变更事件阅读 900
-
OpenResty 中使用 ngx.share.DICT 完成内存存储阅读 3846
-
OpenResty 中的正则匹配和替换阅读 4502
-
Golang 何时使用 new 和 make阅读 813
-
Linux awk 命令简单使用阅读 1478
-
Linux 两个文件取并集、交集、差集阅读 3201
-
软考-系统架构设计师:需求分类-需求获取阅读 1362
-
Linux 之 CentOS yum 更换镜像阅读 1745
-
Redis 命令行显示中文阅读 2293