Eil*_*lon 7 macos nswindow ios swift swiftui
我的 macOS 应用程序中有以下视图:
struct ViewWithToolbar: View {
var body: some View {
Group {
Text("Hello from ViewWithToolbar!")
.padding()
}
.toolbar {
Button("Action1") { }
Button("Action2") { }
}
.frame(minWidth: 500, minHeight: 400.0)
}
}
Run Code Online (Sandbox Code Playgroud)
如果我在App声明中通过这个视图,一切都会按预期进行。当我尝试在新窗口中呈现此视图时,问题就开始了,如下例所示:
struct RootView: View {
var body: some View {
Group {
Button("Present View with Toolbar") {
let controller = NSHostingController(rootView: ViewWithToolbar())
let window = NSWindow(contentViewController: controller)
window.contentViewController = controller
window.title = "View with Toolbar"
window.styleMask = [.titled, .closable, .miniaturizable, .resizable]
window.makeKeyAndOrderFront(nil)
}
.padding()
}
.frame(minWidth: 500, minHeight: 400)
}
}
Run Code Online (Sandbox Code Playgroud)
该视图确实在新窗口中打开,但工具栏不再显示。除了我传递给 的标题之外,它似乎完全忽略了顶部栏window。
什么可能导致此问题?这与我呈现窗口的方式有关吗?有没有一种更 SwiftUI'ish 的方式来呈现一个新窗口来解决这个问题?
| 归档时间: |
|
| 查看次数: |
827 次 |
| 最近记录: |