Android开发---按两次Back键退出
2016-11-19 18:02
218 查看
思路1:记录上次点击的时间,与本次点击的时间比较,当两次时间间隔小于一定值时,退出,否则提示“再按一次退出程序”,同时更新上次点击时间
[java] view
plain copy
private long firstTime = 0;
@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
switch(keyCode)
{
case KeyEvent.KEYCODE_BACK:
long secondTime = System.currentTimeMillis();
if (secondTime - firstTime > 2000) { //如果两次按键时间间隔大于2秒,则不退出
Toast.makeText(this, "再按一次退出程序", Toast.LENGTH_SHORT).show();
firstTime = secondTime;//更新firstTime
return true;
} else { //两次按键小于2秒时,退出应用
System.exit(0);
}
break;
}
return super.onKeyUp(keyCode, event);
}
思路2:开线程延时处理
[java] view
plain copy
private int mBackKeyPressedTimes = 0;
@Override
public
db37
void onBackPressed() {
if (mBackKeyPressedTimes == 0) {
Toast.makeText(this, "再按一次退出程序 ", Toast.LENGTH_SHORT).show();
mBackKeyPressedTimes = 1;
new Thread() {
@Override
public void run() {
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
} finally {
mBackKeyPressedTimes = 0;
}
}
}.start();
return;
else{
this.activity.finish();
}
}
super.onBackPressed();
}
[java] view
plain copy
private long firstTime = 0;
@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
switch(keyCode)
{
case KeyEvent.KEYCODE_BACK:
long secondTime = System.currentTimeMillis();
if (secondTime - firstTime > 2000) { //如果两次按键时间间隔大于2秒,则不退出
Toast.makeText(this, "再按一次退出程序", Toast.LENGTH_SHORT).show();
firstTime = secondTime;//更新firstTime
return true;
} else { //两次按键小于2秒时,退出应用
System.exit(0);
}
break;
}
return super.onKeyUp(keyCode, event);
}
思路2:开线程延时处理
[java] view
plain copy
private int mBackKeyPressedTimes = 0;
@Override
public
db37
void onBackPressed() {
if (mBackKeyPressedTimes == 0) {
Toast.makeText(this, "再按一次退出程序 ", Toast.LENGTH_SHORT).show();
mBackKeyPressedTimes = 1;
new Thread() {
@Override
public void run() {
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
} finally {
mBackKeyPressedTimes = 0;
}
}
}.start();
return;
else{
this.activity.finish();
}
}
super.onBackPressed();
}
相关文章推荐
- Android开发之点击两次Back键退出App
- Android连续点击两次Back键退出程序
- Android开发——点击两次手机返回键退出软件
- 点击两次手机的返回键应用退出的思路与方法---android开发
- Android 按两次back键退出 -- 效率最高版
- android开发:退出程序(对话框、两次返回键退出)
- Android 两次按Back键退出应用
- android,连续点击两次back键退出应用程序
- Android实现点击两次BACK键退出应用
- Android 实现点击两次BACK键退出应用
- Android实现点击两次back退出APP
- Android点击两次back退出程序的两种方法
- Android连续点击两次Back键退出程序
- Android开发之两种方式实现连续点击两次返回键退出程序
- React Native中Android物理back键按两次返回键即退出应用
- Android 点击back键两次退出程序
- Android连续点击两次Back键退出程序
- Android Back键点击两次退出应用详解及实现方法总结
- Android 获取所有Activity,这里演示了用户按两次back键退出app
- android开发:退出程序(对话框、两次返回键退出)