当前位置:编程学习 > wap >>

如何实现双击退出应用啊?

本人新手求大神帮忙说下 --------------------编程问答-------------------- 在双击事件中添加退出方法 --------------------编程问答-------------------- 单击就可以退出...
双击只是多给了用户一次按错的机会. --------------------编程问答-------------------- windows phone 没有直接退出程序的方法,只能用back按钮一步步退出,这里有篇文章介绍抛出异常退出应用,你可以参考下!http://blog.sina.com.cn/s/blog_94000f52010113dj.html --------------------编程问答--------------------
引用 2 楼 cuit 的回复:
单击就可以退出...
双击只是多给了用户一次按错的机会.


同意。不过我很想知道想做双击推出的初衷是什么呢?
害怕用户误操作BACK退出程序?

最简单的办法就是把程序状态保存下来,下次用户不论从哪里进入,都能直接回到上次退出时的状态就好了。 --------------------编程问答-------------------- 双击回退键退出程序。(如果用MessageBox的话10s后会自动退出)
提供一个简单的方法:重写回退键的事件,在事件中记录按下回退键的时间,判断两次的时间差,是否超过你的规定。超过的话e.Cancel = true,然后重新记录时间。如果没有超过,就不操作,直接就退出了(回退栈中已经空了)。
附上Demo

 private void PhoneApplicationPage_BackKeyPress(object sender, System.ComponentModel.CancelEventArgs e)
        {
            if ((DateTime.Now - backKeyPressTime).TotalSeconds >= 4)//时间控制在4s
            {
                SysTools.ShowToastPrompt("再按一次回退键退出程序~");//使用Coding4Fun的Toast提示
                backKeyPressTime = DateTime.Now;
                e.Cancel = true;
            }
        }
--------------------编程问答--------------------
引用 5 楼 Lollipop6105 的回复:
双击回退键退出程序。(如果用MessageBox的话10s后会自动退出)
提供一个简单的方法:重写回退键的事件,在事件中记录按下回退键的时间,判断两次的时间差,是否超过你的规定。超过的话e.Cancel = true,然后重新记录时间。如果没有超过,就不操作,直接就退出了(回退栈中已经空了)。
附上Demo

 private void PhoneApplicationPage_BackKeyPress(object sender, System.ComponentModel.CancelEventArgs e)
        {
            if ((DateTime.Now - backKeyPressTime).TotalSeconds >= 4)//时间控制在4s
            {
                SysTools.ShowToastPrompt("再按一次回退键退出程序~");//使用Coding4Fun的Toast提示
                backKeyPressTime = DateTime.Now;
                e.Cancel = true;
            }
        }


当然你也可以做个动画神马之类的做个提示。然后对应的操作。总之就是在回退键事件中控制e.Cancel 了。 --------------------编程问答-------------------- 这个很难吗??????记录两次时间差。。。然后在几秒内,就调用application.terminal()....好像是这个方法,忘了。。还是Application.Interap();.... --------------------编程问答-------------------- Application.current.Terminate(); --------------------编程问答-------------------- 制造异常不知道会不会被系统记录,当成垃圾软件处理,哈哈 --------------------编程问答--------------------
引用 9 楼 DrSmart 的回复:
制造异常不知道会不会被系统记录,当成垃圾软件处理,哈哈
在wp8下面制造异常不会,wp8有一个Application.current.Terminate();这个方法可以在商城审核通过,但是在wp7下面只能用throw new Exception();可是貌似审核通不过的
补充:移动开发 ,  Windows Phone
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,