WP8.1 双击两次返回键退出程序

在实现Windows Phone上实现点按两次返回键退出程序, 一种方法是使用Coding4Fun提供的ToastPrompt, 使用方法如下:

1. 安装引用, 打开Package Manager Console.

输入下列命令以安装 Coding4Fun.Toolkit.Controls

Install-Package Coding4Fun.Toolkit.Controls

输入下列命令以安装 GalaSoft.MvvmLight.Messaging

Install-Package MvvmLight

2. 在代码中,添加如下引用

using Coding4Fun.Toolkit.Controls;
using GalaSoft.MvvmLight.Messaging;

3. 在MainPage()构造函数中,注册Messenger的代理函数,并实现该函数

Public MainPage()
{
Messeger.Default.Register<bool>(this, (l) => ChangeExitState(l));
}

bool isExit = false;

private void ChangeExitState(bool value)
{
isExit = value;
}

4. 在Backkey_Pressed事件中,实现点按两次退出

private void MainPage_BackPressed(object sender, BackPressedEventArgs e)
{
if(!isExit)
{
isExit = true;
var toast = new ToastPrompt { Message = "再按一次退出程序" };
toast.Completed += (o, ex) => { Messenger.Default.Send<bool>(false); };
toast.Show();
e.Handled = true;
}
else
{
e.Handled = true;
Application.Current.Exit();
}
}
时间: 2024-10-08 21:27:52

WP8.1 双击两次返回键退出程序的相关文章

Android_按两次返回键退出程序和长按返回键退出程序

以上两个功能主要是参考了一下博客的: http://blog.csdn.net/chenshijun0101/article/details/7682210 http://blog.csdn.net/winlinking/article/details/6596455 方法一: 按两次返回键退出程序: Activity: public class Back2FinishAppActivity extends Activity { Exit exit = new Exit(); /** Calle

安卓---连续点击两次返回键退出程序---二级界面的退出程序

法一:实现方式,通过记录按键时间计算时间差实现: import android.app.Activity; import android.os.Bundle; import android.view.KeyEvent; import android.widget.Toast; public class MainActivity extends Activity { private long exitTime = 0; @Override protected void onCreate(Bundl

自定义Back返回键(实现按两次返回键退出程序)

实现机制:当用户点击物理返回键时,Activity会调用onBackPressed(),只需在Activity中复写该方法即可 以下是代码实现: 1 package com.example.qjm3662.service_learn; 2 3 import android.content.ComponentName; 4 import android.content.Intent; 5 import android.content.ServiceConnection; 6 import andr

点击两次返回键退出程序

总的来说,实则是使用onKeyDown方法进行监听按钮点击事件,并作出相应处理,一共有两种方式实现该功能. 第一种是使用消息传递机制,使用Handle()传递消息的间隔时间内若进行了再次点击返回键则退出程序 代码如下: 1 private static boolean isExit = false; 2 3 Handler mHandler = new Handler(){ 4 5 @Override 6 public void handleMessage(Message msg) { 7 //

安卓点击两次返回键退出程序

退出部分的代码: 1 private void exit() { 2 if (!isExit) { 3 isExit = true; 4 Toast.makeText(getApplicationContext(), "再按一次退出程序", 5 Toast.LENGTH_SHORT).show(); 6 // 利用handler延迟发送更改状态信息 7 mHandler.sendEmptyMessageDelayed(0, 2000); 8 } else { 9 Utils.logou

Android应用系列:双击返回键退出程序

前言 有一个很古老的应用技巧,一直被各种大大小小的app用得乐此不疲,那就是双击返回键退出程序.今天就写写它的实现代码,非常简单而且实用. 正文 双击返回键退出程序,一般有两种实现思路,一种是用一个布尔值变量来记录按键事件,并通过线程延时来实现效果:另外一种是直接通过记录按键时间计算时间差实现功能,现在就跟大家分享下代码吧.O(∩_∩)O哈哈~ 1.利用线程延时实现 private static boolean mBackKeyPressed = false;//记录是否有首次按键 @Overr

Android 监听返回键退出程序的两种实现

1.Android 双击返回键退出程序 思路:用户按下返回键时设定一个定时器来监控是否2秒内实现了退出,如果用户没有接着按返回键,则清除第一次按返回键的效果,使程序还原到第一次按下返回键之前的状态.定时器是每次用户按下返回键才去创建. 代码如下: /** * 菜单.返回键响应 */ @Override public boolean onKeyDown(int keyCode, KeyEvent event) { // TODO Auto-generated method stub if(keyC

android 按两次物理返回键退出程序

<?xml version="1.0" encoding="utf-8"?> <!-- 定义当前布局的基本LinearLayout --> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height=

Android 按两次返回键完全退出程序

现在几乎所有的应用程序都有按两个返回键退出应用程序的功能,最开始的时候以为只要使用一句finish(),就可以实现此功能,后来发现这个只是销毁掉当前页面,并没有退出程序,进程还是在后台运行.后来,使用System.exit(0),此方法的功能是结束进程,结果还是不行.后来经过查找,终于找到了一个比较好的方法可以去实现这个功能.此方法的原理为把所有Activity加入到一个链表集合里,当按两次返回键时,先是销毁掉所有Activity,再掉用System.exit(0);具体代码如下 1.先写一个M