zoukankan      html  css  js  c++  java
  • 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();
    }

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

  • 相关阅读:
    [Unity3D] 如何将飞飞游戏资源提取并加载到uinty3d中
    [Unity3D] 解决提示参数动作文件不存在的错误Parameter 'XXX' does not exist.
    [Unity3D] 字体垂直自动滚动&鼠标拖拽滑动字体滚动
    [Unity3D] 图集按照顺序显示(幻灯片效果)&指定间隔时间显示
    [Unity3D] 在UI界面上显示播放视频
    TypeScript
    Css 设置超过再两行显示省略号
    vue scss 样式穿透
    JavaScript 严格模式(strict mode)
    Webpack file-loader 和 url-loader
  • 原文地址:https://www.cnblogs.com/rongweijun/p/5322543.html
Copyright © 2011-2022 走看看