微软的wp8.1 sdk相比之前wp8 sdk以及相关dll类库,微软又重新编译过,相关系统类库也经过精简,删改了部分传统dll库中的方法对象,很多常用方法对象被写进Windows.UI为前缀的命名空间中,可以看出微软wp8.1经过了一定的优化。

此处功能设计描述为,触摸一次返回键,提示是否退出app,再点一次即关闭app。

 <Grid Background="#F5F5F5" DataContext="{Binding Path=MainPageViewModel, Source={StaticResource Locator}}">
<Grid Canvas.ZIndex="10000" Visibility="{Binding ExitNotificationVisible}" Height="30" Background="Red" VerticalAlignment="Top">
<TextBlock FontSize="14" Text="提示: 再按一次返回键退出支付宝" VerticalAlignment="Center" Margin="10 0 0 0" />
</Grid>
<ContentControl HorizontalContentAlignment="Stretch" VerticalContentAlignment="Stretch" Content="{Binding DynamicContent}" />
</Grid>
 using System;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;
using Windows.UI.Popups;
 public class MainPageViewModel : Core.ViewModelBase
{
public MainPageViewModel()
{
InitData();
if(DynamicContent == null)
{
DynamicContent = ViewControlLocator.Instance.RegisterViewControl<HomePage, HomePageViewModel>(true);
}
//---物理返回键api---
Windows.Phone.UI.Input.HardwareButtons.BackPressed += HardwareButtons_BackPressed;
} #region attribute
//---计时器---
DispatcherTimer timer = null;
int timesToTick = ; private UserControl m_DynamicContent;
public UserControl DynamicContent
{
get { return m_DynamicContent; }
set { m_DynamicContent = value; RaisePropertyChanged("DynamicContent"); }
} private Visibility m_ExitNotificationVisible;
public Visibility ExitNotificationVisible
{
get { return m_ExitNotificationVisible; }
set { m_ExitNotificationVisible = value; RaisePropertyChanged("ExitNotificationVisible"); }
}
#endregion #region method
private void InitData()
{
ExitNotificationVisible = Visibility.Collapsed;
} //---关闭事件---
void HardwareButtons_BackPressed(object sender, Windows.Phone.UI.Input.BackPressedEventArgs e)
{
e.Handled = true;
if (ExitNotificationVisible == Visibility.Collapsed)
{
ExitNotificationVisible = Visibility.Visible; if(timer == null)
{
timer = new DispatcherTimer();
}
timer.Interval = TimeSpan.FromSeconds();
timer.Tick += timer_Tick;
timer.Start();
}
else
{
App.Current.Exit();
}
} //---到时没有执行关闭操作,隐藏关闭操作提示---
void timer_Tick(object sender, object e)
{
timesToTick--;
if (timesToTick == )
{
timesToTick = ;
timer.Tick -= timer_Tick;
timer.Stop();
ExitNotificationVisible = Visibility.Collapsed;
}
}
#endregion
}

wp8.1 app退出操作提示的更多相关文章

  1. 微信扫描打开APP下载链接提示代码优化

    上一次我发了一篇文章叫“微信打开网址添加在浏览器中打开提示”,里面我发出来了三个代码,分别是纯JS.js+html.jQuery+HTML代码.今天来一个简化版带可以关闭的按钮操作.使用的是纯JS+H ...

  2. 微信扫描打开APP下载链接提示代码优化(转)

    上一次我发了一篇文章叫“微信打开网址添加在浏览器中打开提示”,里面我发出来了三个代码,分别是纯JS.js+html.jQuery+HTML代码.今天来一个简化版带可以关闭的按钮操作.使用的是纯JS+H ...

  3. iOS开发实用技巧—在手机浏览器头部弹出app应用下载提示

    iOS开发实用技巧—在手机浏览器头部弹出app应用下载提示 本文介绍其简单使用: 第一步:在本地建立一个访问的服务端.  打开本地终端,在本地新建一个文件夹,在该文件夹中存放测试的html页面.   ...

  4. [转]使用Xcode 4发布App 实例操作

    使用xcode 4发布app 实例操作是本文介绍的内容,不多说,我们直接进入话题. 1.iOS Provisioning Portal 和iTunes Connect 没有变,下载与安装.mobile ...

  5. ABAP程序中退出操作(CHECK, EXIT, RETURN, LEAVE PROGRAM)

    这里总结一下几个常用的退出操作:  CHECK.(SAP官方推荐只在循环中使用) 1)CHECK 后面要跟一个表达式,当表达式值为假(false)时,CHECK发生作用,退出循环(LOOP)或处理程序 ...

  6. 小技巧:SystemTray中进行操作提示

    SystemTray中进行操作提示在wp中应用比较广泛,截图如下. 实现方法也十分简单 1.xaml代码中写入: shell:SystemTray.IsVisible="True" ...

  7. AIX-vi操作-提示Unknown terminal type的问题解决方法

    AIX-vi操作-提示Unknown terminal type的问题解决方法AIX Version 5.3$ vi /etc/profilelinux: Unknown terminal type[ ...

  8. iOS 检查app版本更新操作

    iOS 检查app版本更新操作 1:获取本地安装的版本信息: [NSString stringWithFormat:@"Version %@ (%@)", [[[NSBundle ...

  9. eclipse的hadoop插件对集群操作提示org.apache.hadoop.security.AccessControlException:Permission denied

    eclipse的hadoop插件对集群操作提示org.apache.hadoop.security.AccessControlException:Permission denied: user = z ...

随机推荐

  1. ie6绝对定位的块会被select元素遮挡的解决方案

    RT(已无力吐槽ie),解决方法是:定义一个iframe,与想要显示的绝对定位的块设置为同一大小.放在同一个位置上.我的网页里绝对定位的元素是会随着鼠标移动显示和隐藏的,于是这个frame也要跟着显示 ...

  2. leetcode36

    public class Solution { public bool IsValidSudoku(char[,] board) { ; i < ; i++) { var dic = new D ...

  3. centOS安装openoffice的方法

    centOS安装openoffice的方法 分类: centOS 2012-06-15 10:24 2872人阅读 评论(0) 收藏 举报 centos测试 yum install openoffic ...

  4. WPF 绑定以基础数据类型为集合的无字段名的数据源

    WPF 绑定以基础数据类型为集合的无字段名的数据源 运行环境:Window7 64bit,.NetFramework4.61,C# 6.0: 编者:乌龙哈里 2017-02-21 我们在控件的数据绑定 ...

  5. 塔防游戏 Day2

    1. 创建炮塔选择的 UI 使用 UI -> Toggle .注意指定同一 group. 2. 创建炮台的数据类 [System.Serializable] // 序列化 public clas ...

  6. iOS学习之UIPickerView控件的简单使用

    UIPickerView控件在给用户选择某些特定的数据时经常使用到,这里演示一个简单的选择数据,显示在UITextField输入框里,把UIPickerView作为输入View,用Toolbar作为选 ...

  7. tomcat https

    转自 http://11lingxian.iteye.com/blog/1491607 双向认证: 客户端向服务器发送消息,首先把消息用客户端证书加密然后连同时把客户端证书一起发送到服务器端, 服务器 ...

  8. Linux实战教学笔记52:GlusterFS分布式存储系统

    一,分布式文件系统理论基础 1.1 分布式文件系统出现 计算机通过文件系统管理,存储数据,而现在数据信息爆炸的时代中人们可以获取的数据成指数倍的增长,单纯通过增加硬盘个数来扩展计算机文件系统的存储容量 ...

  9. 802.11bgn信道划分及WirelessMon规划频段

    一.802.11bgn模式支持14信道,第14信道一般不使用.对应频率范围如下: Channel Frequency range Central Frequency ----------------- ...

  10. NodeJS - npm WARN package.json : No repository field:can not open package.json

    最近在研究node.js,在安装npm的时候发现了几个报错,瞬间蒙圈,查找文献基本解决(文献好少呀~  -.-)   一.报错:“can not open  path/path/package.jso ...