android中实现“再按一次退出”功能
-
首先,定义两次点击退出按钮的时间间隔:private static final long INTERNAL_TIME=2000;
然后,定义一个当前时间的变量:private long exitTime = System.currentTimeMillis() - INTERVAL_TIME;这个常量是用来计算得到当前时间的。初始化的时候减去一个时间间隔保证在刚打开页面的时候点击退出也会提示。
当时间间隔小于INTERNAL_TIME时退出程序,大于INTERNAL_TIME时此次点击就是第一次点击了,会弹出再次点击退出的提示。
-
然后实现页面的onkeydown事件。代码如下:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
if (keyCode == KeyEvent.KEYCODE_BACK) {
if ((System.currentTimeMillis() - exitTime) > INTERVAL_TIME) {
exitTime = System.currentTimeMillis();
Toast.makeText(this, "再按一次退出程序", Toast.LENGTH_SHORT).show();
}
else {
System.exit(0);
}
return true;
}
return super.onKeyDown(keyCode, event);
} - 其实现的原理,就是取到你两次点击退出按钮的时间。两次的间隔时间小于2000毫秒时就实现退出,当两次的时间间隔大小2000时,就给用户一个再按一次就退出的提示。怎么样。这样做是不是很方便。当然,还有一个要注意的地方,就是你要在哪个里面实现这个功能,就要在哪个activity中放上这段代码,如果你要放的页面太多,那么你就写一个类,在activity中继承一下这个类就可以了。
更多相关文章
- 使用eclipse编写并运行你的第一个Android程序
- Android(安卓)studio打包生成apk
- conversion to dalvik format failed with error 1 错误解决方案
- Android(安卓)地址选择器仿京东;
- (未解决)问题记录ionic android 签名之后安装到手机上点击运行出
- 第一节.安装Android(安卓)Studio(Ubuntu)
- Android设置多个定时器时只有最后一个定时器有效的问题
- android之onCreateOptionsMenu失效,按菜单键无反应
- android四种点击事件触发写法