喜大普奔的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();
}

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

最新文章

  1. 第六课——UIDynamicAnimator
  2. ASP.NET中处理异常的几种方式
  3. Eclipse报错:java.lang.ClassNotFoundException: ContextLoaderListener(Maven工程)
  4. CF_91B
  5. js的eval方法
  6. UESTC_秋实大哥与战争 2015 UESTC Training for Data Structures<Problem D>
  7. Mactype 解决字体出现剃尾
  8. 设计模式Adapter模式的五分钟
  9. 从OneNote走出,技术博客养成记
  10. 初识php soap 学习过程中的摘抄,便于后期翻阅
  11. Django Form表单组件
  12. GitHub-创建仓库与本地同步
  13. Appium学习笔记3_Genymotion模拟器安装
  14. cxf 方法添加注解
  15. Confluence的简单安装以及与jira链接(Confluence不知道有没有破解)
  16. sparkr基本操作1
  17. [C#]嵌入互操作类型
  18. Gradle系列之从init.gradle说起
  19. flink ha zk集群迁移实践
  20. c++对象模型是什么,对象的内存布局和结构问题

热门文章

  1. 删除链表中的重复元素:不留&留一个&删除一个
  2. 215. Kth Largest Element in an Array(QuickSort)
  3. 观察者模式 DataObserver
  4. 坑爹的HP
  5. .net core webapi 部署windows server 2008 r2 笔记
  6. MacOs执行SQL出错(mysql)
  7. workerman使用
  8. [Selenium]验证点了某个Button之后无反应
  9. 2018.10.14 NOIP训练 圣诞树(简单dp)
  10. pyhthon lambda