Ran*_*tep 5 user-interface swift swiftui
正如标题所建议的,我应该如何在 macOS 上禁用 SwiftUI 2 的全屏按钮?
我能找到的唯一信息似乎使用了NSWindow
. SwiftUI 2 中有没有一种原生方法可以做到这一点?
你可以简单地使用.onReceive
修饰符来达到目的:
struct MacApp: App {
var body: some Scene {
WindowGroup {
ContentView()
.frame(width: 480, height: 272)
.fixedSize()
.onReceive(NotificationCenter.default.publisher(for: NSApplication.willUpdateNotification), perform: { _ in
for window in NSApplication.shared.windows {
window.standardWindowButton(.zoomButton)?.isEnabled = false
}
})
}
.windowStyle(HiddenTitleBarWindowStyle())
}
Run Code Online (Sandbox Code Playgroud)
小智 1
从macOS 13.0开始,您可以定义size
ContentView 并将其设置windowResizability
为contentSize
.
var body: some Scene {
WindowGroup {
ContentView().frame(width: 300, height: 400)
}.windowResizability(.contentSize)
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1869 次 |
最近记录: |