C# WP8的单游戏-停用时加载暂停屏幕

C# WP8的单游戏-停用时加载暂停屏幕,c#,windows-phone-8,windows-phone-7.1,monogame,C#,Windows Phone 8,Windows Phone 7.1,Monogame,我试图处理用户按下开始按钮或搜索按钮并将应用程序设置为休眠状态的情况。我基本上希望它加载一个暂停屏幕,这样当用户返回应用程序时,就会显示暂停屏幕 当我尝试在停用的方法中创建新屏幕时,我遇到了困难-我无法加载任何内容,因为内容管理器之类的东西已经被禁用 这有什么办法吗?即,我是否可以在停用的方法中加载新内容 以下是我迄今为止的代码: void GameDeactivated(object sender, DeactivatedEventArgs e) { // Mu

我试图处理用户按下开始按钮或搜索按钮并将应用程序设置为休眠状态的情况。我基本上希望它加载一个暂停屏幕,这样当用户返回应用程序时,就会显示暂停屏幕

当我尝试在停用的方法中创建新屏幕时,我遇到了困难-我无法加载任何内容,因为内容管理器之类的东西已经被禁用

这有什么办法吗?即,我是否可以在停用的方法中加载新内容

以下是我迄今为止的代码:

    void GameDeactivated(object sender, DeactivatedEventArgs e)
    {
        // Mute the game.
        //MediaPlayer.IsMuted = true;
        //AudioManager.IsMuted = true;

        GameScreen[] screens = mScreenManager.GetScreens();

        if(screens[screens.Length - 1] is GameplayScreen)
        {
            Debug.WriteLine("I am here and the last screen is a gameplay one");

            GameplayScreen gs = (GameplayScreen) screens[screens.Length - 1];

            Debug.WriteLine("here and " + gs.Level.LevelData.Index);

            //AudioManager.PauseSong();

            // This is the error line as when it tries to load the new screen it gets null reference exceptions.
            //mScreenManager.AddScreen(new PauseScreen(gs.Level.LevelData), null);

        }


        base.OnDeactivated(sender, e);


    }

我鼓励您实施一些预内容加载,这样可以解决您的问题。在某些情况下,加载“随需应变”会使你的游戏“滞后”——即新怪物第一次呈现——内容加载->调用磁盘上的内容文件->低fps持续~秒。您还可以添加一些布尔值,如
wasgameadeactivated
,并在
OnGameActivated
中加载暂停状态