1双击退出程序_第1页
1双击退出程序_第2页
1双击退出程序_第3页
1双击退出程序_第4页
1双击退出程序_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

双击退出程序一、双击退出程序2如果用户在两秒之内重复点击了返回键,则执行退出操作;如果用户点击了一次返回键之后,超过两秒未再次点击,则不响应退出事件。效果图如下:一、双击退出程序3实现这种需求的整体思路就是监测返回键,然后监测是否在指定时间之内再次点击了返回键。(1)监测返回键有三种方式,分别如下:onBackPressed()onKeyDown()onKeyUp()(2)控制指定时间有两种方式:使用Timer()计时器,超出指定时间之后销毁第一次的点击事件手动记录点击的时间--System.currenTimeMillis(),判断两次点击的时间是否超过指定时间一、双击退出程序4(1)第一种办法响应Activity的onKeyUp事件,两次点击时间大于2秒钟就不响应,小于2秒钟就退出程序

代码://记录用户首次点击返回键的时间

privatelongfirstTime=0;

/**

*第一种解决办法通过监听keyUp

*@paramkeyCode

*@paramevent

*@return

*/

@Override

publicbooleanonKeyUp(intkeyCode,KeyEventevent){

if(keyCode==KeyEvent.KEYCODE_BACK&&event.getAction()==KeyEvent.ACTION_UP){

longsecondTime=System.currentTimeMillis();

if(secondTime-firstTime>2000){

Toast.makeText(MainActivity.this,"再按一次退出程序",Toast.LENGTH_SHORT).show();

firstTime=secondTime;

returntrue;

}else{

finish();

}

}

returnsuper.onKeyUp(keyCode,event);

}一、双击退出程序5(2)第二种办法和第一种办法一样,这不过这次响应onKeyDown事件

代码:/**

*第二种办法

*@paramkeyCode

*@paramevent

*@return

*/

@Override

publicbooleanonKeyDown(intkeyCode,KeyEventevent){

if(keyCode==KeyEvent.KEYCODE_BACK&&event.getAction()==KeyEvent.ACTION_DOWN){

longsecondTime=System.currentTimeMillis();

if(secondTime-firstTime>2000){

Toast.makeText(MainActivity.this,"再按一次退出程序",Toast.LENGTH_SHORT).show();

firstTime=secondTime;

returntrue;

}else{

finish();

}

}

returnsuper.onKeyDown(keyCode,event);

}一、双击退出程序6(3)第三种办法直接重写onBackPressed()方法

代码:/**

*第三种方法

*/

@Override

publicvoidonBackPressed(){

longsecondTime=System.currentTimeMillis();

if(secondTime-firstTime>2000){

Toast.makeText(MainActivity.this,"再按一次退出程序",Toast.

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论