Android退出程序时的"再按一次退出"实现
2013-12-06 10:15
411 查看
android
个人觉得当用户按下后退键时,出现"再按一次退出"的提示防止误操作比弹出一个对话框是会更人性化的。话不多说上代码:
第一种:重写onKeyDown来监听:
[java] view plaincopy
long waitTime = 2000;
long touchTime = 0;
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if(event.getAction() == KeyEvent.ACTION_DOWN && KeyEvent.KEYCODE_BACK == keyCode) {
long currentTime = System.currentTimeMillis();
if((currentTime-touchTime)>=waitTime) {
Toast.makeText(this, "再按一次退出", Toast.LENGTH_SHORT).show();
touchTime = currentTime;
}else {
finish();
}
return true;
}
return super.onKeyDown(keyCode, event);
}
第二种是重写onBackPressed方法直接监听返回键:
[java] view plaincopy
long waitTime = 2000;
long touchTime = 0;
@Override
public void onBackPressed() {
long currentTime = System.currentTimeMillis();
if((currentTime-touchTime)>=waitTime) {
Toast.makeText(this, "再按一次退出", Toast.LENGTH_SHORT).show();
touchTime = currentTime;
}else {
finish();
}
}
实现代码是一样的只是重写的方法不同罢了。
如果你需要同时重写这两个方法,可能要注意一些问题啦!系统先是onKeyDown,如果return true了,就不会onBackPressed啦!
好了,今天和大家分享了一个简单而又实用的功能。谢谢大家。
个人觉得当用户按下后退键时,出现"再按一次退出"的提示防止误操作比弹出一个对话框是会更人性化的。话不多说上代码:
第一种:重写onKeyDown来监听:
[java] view plaincopy
long waitTime = 2000;
long touchTime = 0;
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if(event.getAction() == KeyEvent.ACTION_DOWN && KeyEvent.KEYCODE_BACK == keyCode) {
long currentTime = System.currentTimeMillis();
if((currentTime-touchTime)>=waitTime) {
Toast.makeText(this, "再按一次退出", Toast.LENGTH_SHORT).show();
touchTime = currentTime;
}else {
finish();
}
return true;
}
return super.onKeyDown(keyCode, event);
}
第二种是重写onBackPressed方法直接监听返回键:
[java] view plaincopy
long waitTime = 2000;
long touchTime = 0;
@Override
public void onBackPressed() {
long currentTime = System.currentTimeMillis();
if((currentTime-touchTime)>=waitTime) {
Toast.makeText(this, "再按一次退出", Toast.LENGTH_SHORT).show();
touchTime = currentTime;
}else {
finish();
}
}
实现代码是一样的只是重写的方法不同罢了。
如果你需要同时重写这两个方法,可能要注意一些问题啦!系统先是onKeyDown,如果return true了,就不会onBackPressed啦!
好了,今天和大家分享了一个简单而又实用的功能。谢谢大家。
相关文章推荐
- Android退出程序时的"再按一次退出"实现
- Android退出程序时的"再按一次退出"实现
- Android中"再按一次返回键退出程序"的实现(返回桌面)
- Android "再按一次返回键退出程序“实现
- Android中的“再按一次返回键退出程序”实现
- Android中如何实现应用再按一次退出程序
- Android中的“再按一次返回键退出程序”实现
- Android中的“再按一次返回键退出程序”实现
- Android中的“再按一次返回键退出程序”实现
- Android中的“再按一次返回键退出程序”实现
- Android中的“再按一次返回键退出程序”代码实现
- Android小技巧:如何实现“再按一次退出程序”效果
- 【转】Android 实现“再按一次退出程序”
- Android中“再按一次返回键退出程序”实现
- Android中的“再按一次返回键退出程序”实现
- Android中的“再按一次返回键退出程序”代码实现
- android 再按一次退出程序(实现代码)
- Android中的“再按一次返回键退出程序”实现
- Android中再按一次返回键退出程序的实现(返回桌面)两种方法
- Android程序中“再按一次退出”的实现