码迷,mamicode.com
首页 > 其他好文 > 详细

小娜教你学开发 - UWP

时间:2015-11-05 18:07:12      阅读:318      评论:0      收藏:0      [点我收藏+]

标签:

UWP开发的小技巧  

技巧一: 在Phone上拓展你的应用的显示区域。(WP8.1中也适用) 

在Windows PHone手机上, 在手机屏幕最上方为System Tray,在手机屏幕下方为BottomAppbar, 应用的显示区域位于在这两者之间。若要使应用的显示区域拓宽,使用到了Windows.UI.ViewManagement的功能, 借助于其中的方法, 可以实现应用的全屏显示,即充满整个系统屏幕。

示例代码:

var appView = Windows.UI.ViewManagement.ApplicationView.GetForCurrentView();
appView.SetDesiredBoundsMode(ApplicationViewBoundsMode.UseCoreWindow);

技巧二: 检测应用当前运行在何设备上

假设程序员要在代码中检测当前设备的类型,从而提供个性化的页面显示,可以使用的的类名为Windows.System.Profile.AnalyticsInfo。 示例代码:

var platformFamily = Windows.System.Profile.AnalyticsInfo.VersionInfo.DeviceFamily;

platformFamily可选的值为Windows.Desktop, Windows.Mobile, etc。

技巧三: 页面的导航

UWP应用中页面的导航相较于WP8.1发生了变化, UWP中没有提供NavigationManager这样的类来实现页面导航, 主要是因为UWP以后, 同一套代码既运行在Phone上, 也运行在PC上。当然, 你可以去扩展Phone SDK, 但是更简单的办法是使用Windows.UI.Core.SystemNavigationManager, 使用这个方法能够兼顾到PC和Phone。 首先, 为了能使整个导航机制在所有页面上执行, 我们需要修改App.xaml.cs文件, 在OnLaunched(LaunchActivatedEventArgs e)方法中加入几行代码。      

示例代码:

rootFrame.Navigated += (s, arg) =>
{
    SystemNavigationManager.GetForCurrentView().AppViewBackButtonVisibility =
    ((Frame)s).CanGoBack ? AppViewBackButtonVisibility.Visible : AppViewBackButtonVisibility.Collapsed;
};

SystemNavigationManager.GetForCurrentView().BackRequested += (ss, arg1) =>
{
    Frame rFrame = Window.Current.Content as Frame;
    if (rFrame.CanGoBack)
    {
        arg1.Handled = true;
        rFrame.GoBack();
    }
};
SystemNavigationManager.GetForCurrentView().AppViewBackButtonVisibility =
rootFrame.CanGoBack ?
AppViewBackButtonVisibility.Visible :
AppViewBackButtonVisibility.Collapsed;

To customize this template, please head to VSWebEssentials for more information.

小娜教你学开发 - UWP

标签:

原文地址:http://www.cnblogs.com/qixue/p/4940059.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!