SwiftUI WindowGroup:如何限制windows的数量?
SwiftUI WindowGroup: How to limit the number of windows?
我正在构建一个单一 window 应用程序并希望使用新的Swift 应用程序生命周期。
import SwiftUI
@main
struct SingleWindowApp: App {
var body: some Scene {
WindowGroup {
ContentView()
}
}
}
WindowGroup
的默认实现允许 window 的多个实例(即,如果您点击 ⌘N
)。我找不到可以改变该行为的修饰符。
如何将 WindowGroup 中的 windows 数量限制为 1 个?
应该这样做:
import SwiftUI
@main
struct SingleWindowApp: App {
var body: some Scene {
WindowGroup {
ContentView()
}.commands {
CommandGroup(replacing: .newItem, addition: { })
}
}
}
因为我遇到了同样的问题,但是在命令修饰符无效的 iPad 上,我发现了这个:有一个“应用程序场景清单” UIApplicationSceneManifest
属性 在您的 Info.plist 是一本字典,作为子项“启用多个 Windows” UIApplicationSupportsMultipleScenes
默认设置为 YES
。将此选项设置为 NO
会产生所需的效果:)
我正在构建一个单一 window 应用程序并希望使用新的Swift 应用程序生命周期。
import SwiftUI
@main
struct SingleWindowApp: App {
var body: some Scene {
WindowGroup {
ContentView()
}
}
}
WindowGroup
的默认实现允许 window 的多个实例(即,如果您点击 ⌘N
)。我找不到可以改变该行为的修饰符。
如何将 WindowGroup 中的 windows 数量限制为 1 个?
应该这样做:
import SwiftUI
@main
struct SingleWindowApp: App {
var body: some Scene {
WindowGroup {
ContentView()
}.commands {
CommandGroup(replacing: .newItem, addition: { })
}
}
}
因为我遇到了同样的问题,但是在命令修饰符无效的 iPad 上,我发现了这个:有一个“应用程序场景清单” UIApplicationSceneManifest
属性 在您的 Info.plist 是一本字典,作为子项“启用多个 Windows” UIApplicationSupportsMultipleScenes
默认设置为 YES
。将此选项设置为 NO
会产生所需的效果:)