当前位置: 移动技术网 > IT编程>移动开发>Android > Android中再按一次退出提醒实现的两种方法

Android中再按一次退出提醒实现的两种方法

2019年07月23日  | 移动技术网IT编程  | 我要评论

我叫mt国语,徐才 厚出事,nadia fazlini

很多应用中都有一个在用户后退的时候显示“再按一次退出”的提醒,这个怎么实现呢?有两种方式

第一种方式(最常用)

 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的显示时间和等待时间相同
       toast.maketext(this, "再按一次退出", (int)waittime).show(); 
       touchtime = currenttime; 
     }else { 
       finish(); 
     } 
     return true; 
   } 
   return super.onkeydown(keycode, event); 
 }

第二种方式

重写onbackpressed方法直接监听返回键

 @override
 public void onbackpressed() {
    long currenttime = system.currenttimemillis(); 
    if((currenttime-touchtime)>=waittime) { 
     //让toast的显示时间和等待时间相同
      toast.maketext(this, "再按一次退出", (int)waittime).show(); 
      touchtime = currenttime; 
    }else { 
      finish(); 
    } 
 }

这种方法虽然写法简单,但是这种方法缺只适用于android 2.0以后.

如果你需要同时重写这两个方法,可能要注意一些问题啦!系统先是onkeydown,如果return true了,就不会onbackpressed了

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对移动技术网的支持。如果你想了解更多相关内容请查看下面相关链接

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网