Android 再按一次退出程序三种办法
2016-09-29 23:31
218 查看
在Xamarin android中双击返回键退出程序的第一种做法
思路就是当用户按下返回键的时间超过两秒就退出,根据Keycode.Back判断用户按下的是返回键,重写这个OnKeyDownDateTime? firstTime; public override bool OnKeyDown(Keycode keyCode, KeyEvent e) { if (keyCode == Keycode.Back && e.Action == KeyEventActions.Down)//判断点击的是返回键,并且动作是Down按下 { if (!firstTime.HasValue || DateTime.Now.Second - firstTime.Value.Second > 2) { Toast.MakeText(this, "再按一次退出", ToastLength.Short).Show(); firstTime = DateTime.Now; } else { Finish();//退出应用程序 } return true; } return base.OnKeyDown(keyCode,e); }
在Xamarin android中双击返回键退出程序的第二种做法
思路就是使用.net的定时器对象Timer,当按下返回键 timer启动,两秒之内再次按下返回键isExit为true,直接退出程序。<pre name="code" class="csharp"> public override bool OnKeyDown(Keycode keyCode, KeyEvent e) { if (keyCode == Keycode.Back && e.Action == KeyEventActions.Down) { ExitWidthTimer(); return true; } return base.OnKeyDown(keyCode,e); } private void ExitWidthTimer() { bool isExit = false; Timer time_timer = null; //注意这里使用的用的.net的Timer对象 if (!isExit) { isExit = true; Toast.MakeText(this, "再按一次退出", ToastLength.Short).Show(); time_timer = new Timer(); time_timer.Interval = 2000; time_timer.Enabled = true; //定时的2000毫秒到了isExis为true,退出app time_timer.Elapsed +=delegate{ isExit = false; }; } else { Finish(); } }
android中双击退出程序的第三种方法暂时还没想出来,差不多就是利用以上两种方法来实现,代码很简单,关键还是要知道怎么写的。ok,如果你有还有更好的写法和实现方式也可以告诉我哦!不要问为什么老是两秒钟,一般的程序都是两秒,仿佛也是业内默认的一样的
相关文章推荐
- Android 再按一次退出程序三种办法
- Android程序完全退出的三种方法
- 实现Android程序退出的三种方式【转】
- Android程序完全退出的三种方法
- Android 退出程序的三种方法
- Android程序完全退出的三种方法
- android.webkit.WebView 使用 SINGLE_COLUMN layout algorithm 导致程序意外退出的解决办法
- Android程序完全退出的三种方法
- Android程序完全退出的三种方法
- Android程序完全退出的三种方法
- Android程序完全退出的三种方法
- Android程序完全退出的三种方法
- (转)Android程序完全退出的三种方法
- android退出程序三种方式及其小问题
- Android程序完全退出的三种方法
- Android程序完全退出的三种方法
- Android彻底退出程序的多种办法
- Android开发中程序退出的三种方法
- Android程序完全退出的三种方法
- Android系统中程序完全退出的三种方法