“再按一次返回键退出程序”实现
2016-06-23 21:56
423 查看
“再按一次返回键退出程序”实现
问自己一个为什么?
每个app中都有退出这个响应,android是通过按“返回键”退出程序;在用户使用app时不免会出现一些“误操作”按了一下返回键,退出了程序,这样的用户体验是不友好的。所以,就有必要对返回键进行判断,判断用户是否要退出。一般我们的判断条件是2s内按下返回键俩次就退出程序。
思路导析
在第一次按下“back”键时记录下当前系统时间存储在变量“exittime”;在第二次按下时,将当前系统时间与“exittime”比较,如果小于2秒就退出程序,反之,将当前时间存储于“exittime”。代码实现
private long exittime = 0; @Override public void onBackPressed() { if (System.currentTimeMillis() - exittime < 2000){ super.onBackPressed(); }else { Mytools.ShowToast(MainActivity.this,getString(R.string.string_exit)); exittime = System.currentTimeMillis(); } } }
代码扩展实现
加入了判断抽屉的状态private long exittime = 0; @Override public void onBackPressed() { DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout); if (drawer.isDrawerOpen(GravityCompat.START)) { drawer.closeDrawer(GravityCompat.START); } else { if (System.currentTimeMillis() - exittime < 2000){ super.onBackPressed(); }else { Mytools.ShowToast(MainActivity.this,getString(R.string.string_exit)); exittime = System.currentTimeMillis(); } } }
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件
- SourceProvider.getJniDirectories