gpt4 book ai didi

c# - Monogame XAML 重置 CoreWindow?

转载 作者:太空宇宙 更新时间:2023-11-03 16:06:17 24 4
gpt4 key购买 nike

嘿嘿,

我遇到了一个问题。我正在完成为完成游戏而必须做的所有最后测试,但现在我遇到了一个问题。每当我在竖屏模式下初始化游戏时,游戏都会切换为横屏模式,但 Window.Current.CoreWindow 不会更新。因此,Xaml 模板基于纵向设置而不是横向设置创建窗口。在我的整个游戏初始化之前如何更改或更新 CoreWindow?

经过一些研究,我尝试用游戏重现它 ARMED!我知道它使用 Xaml 模板,甚至在那里我发现了这个问题,当我以纵向打开它时,窗口在移回横向时不会更新,因此被一个损坏的界面/游戏卡住了。

提前致谢。

最佳答案

CoreWindow 不会自行刷新。它只会在你内部刷新 Update()。因此,如果您想在点击初始化部分之前处理对 CoreWindow 的更改,您需要自己处理它们。

_coreWindow = Window.Current.CoreWindow;

// Create the game.
_game = XamlGame<Main>.Create("", _coreWindow, this);

_coreWindow.Activate();
_coreWindow.Dispatcher.ProcessEvents(CoreProcessEventsOption.ProcessAllIfPresent);

在这里你看到我用当前的 CoreWindow 创建我的游戏。在我的游戏构造器完成后,我手动检查并处理可能同时发生的 CoreWindow 的任何更改(主要是方向更改)并处理它们,以便当我的游戏初始化时它将以正确的全景观分辨率运行.

它可能不是最干净的解决方案,但在我的情况下它可以完成工作。

关于c# - Monogame XAML 重置 CoreWindow?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19215368/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com