win10桌面和手机的扩展API,判断是否有实体后退键API

喜大普奔的win10 uap开发预览版终于出了,这次更新跟8.1的变化不是很大,但是将原本win8.1和wp8.1uap的分项目的形式,改为了整合成一个项目,经过一次编译打包成一个appx包,实现了无缝跨平台。

每一个平台特有的API,就变为了扩展API,以下几种

下面,就以wp特有的后退键为例,看一下不同平台扩展api的使用。

如果你新建一个win10UAP的项目,跑在wp上运行,你会发现,后退键竟然他喵的是后台!这不是抢Home键的饭碗么!

自带的几种风格的页面,竟然是用的左上角虚拟后退键,这种倒行逆施的行为微软你真是够了!

一定要把后退功能找回来!!

于是就用到了扩展api:

1.Add References

2.选择 Universal App Platform – Extensions

3.勾选Windows Mobile Extension SDK

4.愉快的使用 Windows.Phone.UI.Input.HardwareButtons.BackPressed += HardwareButtons_BackPressed;

这句代码放到win10桌面里运行是会crash的,因为桌面版里没有此API,所以需要用

Windows.Foundation.Metadata.ApiInformation.IsTypePresent("Windows.Phone.UI.Input.HardwareButtons")

运行时判断是否有该API的支持。

于是,最后的代码可能是这样:


1

2

3

4

5

if (Windows.Foundation.Metadata.ApiInformation.IsTypePresent("Windows.Phone.UI.Input.HardwareButtons"))

        {

       //http://www.liubaicai.net/archives/444

            Windows.Phone.UI.Input.HardwareButtons.BackPressed -= HardwareButtons_BackPressed;

            Windows.Phone.UI.Input.HardwareButtons.BackPressed += HardwareButtons_BackPressed;

        }


1

2

3

4

5

6

7

8

9

private void HardwareButtons_BackPressed(object sender, Windows.Phone.UI.Input.BackPressedEventArgs e)

{

   //http://www.liubaicai.net/archives/444

    e.Handled = true;

    Frame rootFrame = Window.Current.Content as Frame;

    if (rootFrame.CanGoBack)

        rootFrame.GoBack();

    else

        Application.Current.Exit();

}

于是就愉快的实现了后退键后退的功能。

时间: 2024-12-31 17:09:26

win10桌面和手机的扩展API,判断是否有实体后退键API的相关文章

桌面快捷方式的问题-创建-删除-判断

遇到了红米note1,我才知道了什么是开启一次应用创建一个创建一个快捷方式. ………………………… 版权声明:本文为博主原创文章,未经博主允许不得转载. 目录(?)[-] 背景 实现 增加快捷方式 删除快捷方式 快捷方式修改 快捷方式存在判断 兼容与注意事项 兼容 注意事项 参考 附录 原文来自http://blog.zanlabs.com/2015/03/14/android-shortcut-summary/ 将近二个多月没写博客了.之前一段时间一直在搞红包助手,就没抽时间写博客,但写这个真

Win10桌面奔溃怎么办?雨林木风Win10奔溃解决方法教程

Win10用户量一大,问题就如潮水般涌来.最严重的问题就是桌面奔溃,导致电脑无法正常使用.小编也找了很多方法,终于被小编成功突破了,现在来带给大家分享一下如何解决Win10系统桌面奔溃问题. 推荐雨林木风Win10装机版系统:http://www.ylmf10.com/win10zhuangji/ 造成这一系列原因是因为诺顿杀毒及其他杀毒软件.iCloud以及IDT Audio等软件原因,大家可以进入Win10安全模式来卸载这些软件解决Win10桌面奔溃. 进入安全模式的方法: 按Win+R打开

Win10桌面右键响应非常慢怎么办?

Win10桌面右键响应非常慢怎么办? 或许所有人升级到Win10都可能会遇上一个共同问题,右键桌面弹出菜单的反应非常非常的慢,你也感觉到了吧.在桌面点个右键需要等待五六秒左右的时间,这到底是不是系统问题呢?是的,这并不是硬件的问题,而是注册表里某些键值所影响,删除了问题全没了. Win10桌面右键反应慢怎么办? 打开注册表管理器的方法有很多种,小Sun只说通俗易懂的,直接点击任务栏的搜索框输入[Regedit]按回车即可打开注册表管理器.  接下来要怎么做呢?因为本次删除注册表项目录复杂,所以选

Java得到一个整数的绝对值,不使用任何判断和比较语句,包括API.

/** * Java得到一个整数的绝对值,不使用任何判断和比较语句,包括API. <br> * 1.不得使用任何API,如Math.abs()等.<br> * 2.不得使用判断语句,如if.for.while.switch.?:等.<br> * 3.不得使用比较语句,如:==. <=.>=.!=. <.>等. <br> * * @author JAVA世纪网(java2000.net, laozizhu.com) */public c

(运存扩展其)Android手机内存扩展软件RAMEXPANDER使用教程

广义的手机系统内存分为"手机运行内存"及"手机非运行内存".手机的"运行内存"即手机的RAM,相当于电脑的内存(或者叫内存条),手机的"非运行内存",即手机的ROM,是机身内部存储器,相当于电脑的硬盘.手机"运行内存"大,手机就能流畅地运行多个程序,手机"非运行内存"大,能存放更多的数据.Android手机系统内存可以通过"设置>应用程序>管理应用程序"来

对Iphone手机进行的一些判断

包括了对手机系统版本的判断,对手机硬件的判断,对手机具体型号的判断. #import "RootViewController.h" //为判断手机的型号 -(NSString*)deviceString添加头文件 #import "sys/utsname.h" - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. NSLog(@&qu

Horizon View 7 发布Win10桌面三:链接克隆桌面池配置

本篇将介绍Horizon View 7 通过链接克隆发布Win10桌面,关于环境准备与即时克隆部分,请详见本文的前两篇(环境准备:http://jiangjianlong.blog.51cto.com/3735273/1875591.即时克隆桌面池配置:http://jiangjianlong.blog.51cto.com/3735273/1876060).链接克隆是Horizon View的传统功能,在Horizon View 7中变化不大,配置方法与之前的版本大同小异.我们首先来回顾一下什么

Horizon View 7 发布Win10桌面二:即时克隆桌面池配置

本篇将介绍Horizon View 7 通过即时克隆发布Win10桌面,本来想把View的初始配置单独做为一篇,但写出来后发觉内容比较少,就合并到第一篇中去了(详见Horizon View 7 发布Win10桌面一:环境准备http://jiangjianlong.blog.51cto.com/3735273/1875591).即时克隆是Horizon View 7中的新功能,我们首先来了解一下即时克隆的相关内容 一.即时克隆介绍 即时克隆会共享父虚拟机的虚拟磁盘(与 View Composer

百度地图API 判断点是否在圆形内

/** * @fileoverview GeoUtils类提供若干几何算法,用来帮助用户判断点与矩形. * 圆形.多边形线.多边形面的关系,并提供计算折线长度和多边形的面积的公式. * 主入口类是<a href="symbols/BMapLib.GeoUtils.html">GeoUtils</a>, * 基于Baidu Map API 1.2. * * @author Baidu Map Api Group * @version 1.2 */ /** * @n