问题标签 [swiftui-windowgroup]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1301 浏览

swift - SwiftUI:如何在 macOS 应用程序中实现编辑菜单

我正在使用SwiftUI新的App生命周期构建一个 macOS 应用程序。

在开始一个新项目后,所有默认的 macOS 菜单项(如剪切、复制、粘贴)都已经存在,但它们是灰色的。如何为这些默认菜单项实现方法?

在此处输入图像描述

编辑:我目前在( Xcode 12.2 beta 320B5012d)上使用macOS Big Sur 11.0.1 Beta(12B5035g)。我不想用 Storyboards 或 AppDelegate 来解决这个问题,而是用 SwiftUI 和新的App生命周期来解决。

0 投票
1 回答
860 浏览

swift - SwiftUI WindowGroup:如何限制窗口数量?

我正在构建一个窗口应用程序并想使用新的Swift App Lifecycle

的默认实现WindowGroup允许窗口的多个实例(即,如果你点击⌘N)。我找不到改变这种行为的修饰符。

如何将 WindowGroup 中的窗口数量限制为 1?

0 投票
1 回答
806 浏览

macos - 在 MacOS SwiftUI 应用中列出和关闭 Windows

我有这个小示例应用程序,它创建了我的 SwiftUI MacOS 应用程序的多个 Windows。
是否可以:

  • 在 MainView 中列出所有打开的窗口?
  • 从 MainView 关闭单个窗口?
  • 从MainView 向单个窗口发送消息?
0 投票
0 回答
81 浏览

swiftui - 使用 SwiftUI 2.0 在 iPadOS 14.x 下检测硬件键盘按键

我正在尝试为使用 SwiftUI 2.0 编写的 iOS 14.0 应用程序添加硬件键盘支持。我看到了一些使用 UIHostingController 的示例,所以我想在 iOS14/SWiftui 2.0 上使用 WindowGroup 尝试这种方式。

在 XCODE 12.3 中编译时出现错误“通用结构‘WindowGroup’要求‘KeyTestController’符合‘视图’

ContentView() 符合 View 并且在不使用“KeyTestController”类时一切正常。

有什么办法可以解决这个问题?

非常感谢。

0 投票
0 回答
148 浏览

ios - 是否可以在 SwiftUI iOS 应用程序中结合 WindowGroup 和 DocumentGroup ?

我正在开发一个最初从 A WindowGroup 开始的 SwiftUI iOS 应用程序。在另一个视图中,我决定需要将该视图呈现为 DocumentGroup 场景,以利用它附带的所有功能。我不希望应用程序的入口点成为 DocumentGroup 场景。我希望我的应用程序的入口点是一个 WindowGroup 场景,然后在 WindowGroup 场景的另一个视图中,我想调用 DocumentGroup 场景来打开,就好像该应用程序是一个基于文档的应用程序一样。任何帮助都感激不尽。谢谢

0 投票
0 回答
474 浏览

ios - SwiftUI - main()、Scene 和 WindowGroup 仅在 iOS 14 或更高版本中可用

我开始了一个SwiftUI项目,iOS 15作为部署目标,我被要求降低版本,所以我将其更改为 iOS 13,在解决了一些代码兼容性问题后,我在应用程序的入口点出现错误,MyProjectApp.swiftmain()and Sceneand WindowGroupare仅适用于 iOS 14+

如何使入口点与低于 iOS 14.x 的版本兼容?

这是我的入口点的代码

0 投票
0 回答
82 浏览

swiftui - 如何同时使用 .handlesExternalEvents 和 NSAppleEventManager 检测 URL 方案

我有一个基于 SwiftUI 的 Mac 应用程序,其中包含多个WindowGroups.

WindowGroups1.使用 URL 方案打开不同的 SwiftUI

要打开这些窗口,我正在使用 URL 方案(如此处所述):

...然后调用:

☑️ 这很好用!

2. 检测从应用程序外部调用的 URL

我还需要能够识别和处理从应用程序外部调用的 URL 方案,例如myapp://somePath?someParameter=1. 我找到了这个解决方案并在我的AppDelegate

☑️ 这也很好用,而且我的#selector方法也像你期望的那样被调用。

3.问题:如何同时使用.handlesExternalEvents.setEventHandler

这是问题开始的地方:在调用.setEventHandlerWindowGroups不再对调用的 URL 做出反应后,我仍然无法打开新窗口。

这在某种程度上是有道理的,因为我已经在 AppDelegate 中专门注册了一个事件处理程序,kAEGetURL但我不知道如何同时实现这两个功能。期待您的建议!

0 投票
0 回答
35 浏览

swift - 什么相当于 WindowGroup 中的“window.rootViewController” - SwiftUI

我是 SwiftUI 的新手,遇到了一个问题,我想在应用程序内部发生某个操作时更改根视图。

我使用时的处理SceneDelegate方式如下

但是,我目前没有使用 SceneDelegate,因为我正在使用 WindowGroup 初始化应用程序

我的问题是:我现在如何使用 SceneDelegate 执行相同的操作?