停止在游戏过程中弹出通知栏

mon*_*001 5 xna windows-phone notificationcenter windows-phone-8.1

上下文: 我正在使用XNA 4.0框架开发Windows手机游戏.在游戏过程中,如果用户不小心拖动屏幕顶部,通知中心会被拖下来.

我看到很少有应用程序覆盖此行为,而不是弹出通知中心,顶部显示一个小提示,如下面的屏幕截图所示.

问题: 当用户在游戏过程中意外拖动屏幕顶部时,什么是阻止通知中心出现的API?

我想要实现的屏幕截图:

通知中心提示在顶部

同样的问题也在WP论坛上提出,但等待正确的解决方案.

Kev*_*sse 3

要隐藏通知栏,您需要做两件事:

  1. 将您的应用程序设置为全屏
  2. 隐藏页面中的系统托盘

FullScreen您可以通过更改RootFrame 的属性将应用程序设置为全屏。例如,可以在 App 构造函数中的 App.xaml.cs 文件中完成此操作:

public App()
{
    // Global handler for uncaught exceptions.
    UnhandledException += Application_UnhandledException;

    // Standard XAML initialization
    InitializeComponent();

    // Phone-specific initialization
    InitializePhoneApplication();

    // Hide the notification bar
    // Note: this must be done *after* InitializePhoneApplication
    RootFrame.FullScreen = true;

    // Language display initialization
    InitializeLanguage();
}
Run Code Online (Sandbox Code Playgroud)

然后,您还必须通过设置SystemTray.IsVisible属性来隐藏页面上的系统托盘。这可以在 C# 代码或 XAML 中完成:

<phone:PhoneApplicationPage
    x:Class="SL8._1.MainPage"
    xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone"
    shell:SystemTray.IsVisible="False">
Run Code Online (Sandbox Code Playgroud)