Mac Catalyst中的透明工具栏

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

我可以通过SceneDelegate.swift在Mac Catalyst中创建一个统一的工具栏:

// Use a UIHostingController as window root view controller.
if let windowScene = scene as? UIWindowScene {
    let window = UIWindow(windowScene: windowScene)
    window.rootViewController = UIHostingController(rootView: contentView)
    // hide the titlebar
    windowScene.titlebar?.toolbar = NSToolbar()
    windowScene.titlebar?.titleVisibility = .hidden
    ...
}

但是我想使工具栏透明,如本例所示:https://lukakerr.github.io/swift/nswindow-styles#11-transparent-toolbar-without-seperator

在Mac Catalyst中甚至可能吗?

uiwindow maccatalyst
1个回答
0
投票

是的,这在Mac Catalyst中是可能的。在您的SceneDelegate.swift文件中,将工具栏和标题可见性分别设置为false.hidden

func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {
    guard let windowScene = (scene as? UIWindowScene) else { return }

    windowScene.titlebar?.toolbar?.isVisible = false
    windowScene.titlebar?.titleVisibility = .hidden
}
© www.soinside.com 2019 - 2024. All rights reserved.