对新NSViewController的选择应该在覆盖整个Window的旧窗口之上显示新窗口

问题描述 投票:0回答:1

我正在将游戏从iOS移植到MacOS。我知道Apples Catalyst将是一个选择,但我不想这样做,因为如果它是通过触摸或鼠标控制的,它对我的​​UserInterface会产生巨大的影响。

[在iOS中,我在旧的ViewController上方显示一个新的ViewController。新的ViewController的背景是透明的。

以这种方式完成配置:

enter image description here

结果看起来像这样(新的VC在中间显示游戏菜单,并且背景VC的所有按钮都被禁用):

enter image description here

如何在MacOS上实现相同的功能?

我尝试过这种方式:

enter image description here

结果看起来像这样:enter image description here

swift macos cocoa nsviewcontroller
1个回答
0
投票

您不希望调用presentAsModalWindow(_:)(这与“以模态形式呈现”选项的代码等效)。它不对用于显示视图控制器的窗口进行任何自定义。您可能想要做的就是简单地调用present(_, animator:)调用,该调用使您可以在另一个视图控制器上显示视图控制器。我在使用此调用创建自定义动画方面做了video,可能会回答您如何在此处实现所需的功能。

© www.soinside.com 2019 - 2024. All rights reserved.