You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

macOS Sequoia 15.0下SwiftUI窗口无法保持在所有应用(含全屏应用)顶层的解决求助

macOS Sequoia 15.0下SwiftUI窗口无法保持在所有应用(含全屏应用)顶层的解决求助

我自己做了个仅个人使用的自定义时钟App,用来在电脑上看时间,需求很简单——要让它始终显示在所有窗口之上,包括全屏状态的应用和视频。但升级到macOS Sequoia 15.0之后,之前的实现方案失效了:现在切换空间时窗口还能跟着走,但只要把其他应用切到全屏,我的时钟窗口就会被盖住。

我用一个全新的SwiftUI App写了最小复现代码,问题完全一致:

@main
struct testtickerApp: App {
    @NSApplicationDelegateAdaptor(AppDelegate.self) var appDelegate
    
    var body: some Scene {
        WindowGroup {
            ContentView()
        }
    }
}

class AppDelegate: NSObject, NSApplicationDelegate, NSWindowDelegate {
    func applicationDidFinishLaunching(_ notification: Notification) {
        let window = NSApplication.shared.windows.first!
        window.level = .floating
        window.styleMask = .borderless
        window.collectionBehavior = [.canJoinAllApplications, .canJoinAllSpaces, .auxiliary, .fullScreenAuxiliary, .ignoresCycle]
    }
}

而在macOS 15.0之前,这段代码(放在同一个applicationDidFinishLaunching方法里)是完全正常工作的:

func setupWindow(_ window: NSWindow) {
    window.titleVisibility = .hidden
    window.titlebarAppearsTransparent = true
    window.standardWindowButton(NSWindow.ButtonType.closeButton)?.isHidden = true
    window.standardWindowButton(NSWindow.ButtonType.miniaturizeButton)?.isHidden = true
    window.standardWindowButton(NSWindow.ButtonType.zoomButton)?.isHidden = true
    window.isOpaque = false
    window.hasShadow = false
    window.level = .floating
    window.backgroundColor = NSColor.clear
    window.isReleasedWhenClosed = false
    window.isMovableByWindowBackground = true
    window.collectionBehavior = .canJoinAllSpaces
    window.titlebarSeparatorStyle = .none
    window.ignoresMouseEvents = true
    window.delegate = self
}

我之前的实现参考了不少相关方案,也查了Apple官方文档里关于fullScreenAuxiliary的说明,按道理应该能让窗口在全屏应用之上显示才对。现在我试过了各种办法:重新关闭再绘制窗口、手动把窗口移到最前、在Info.plist里把LSUIElement设为TRUE,还有其他各种调整,但都没效果。

我对方案的要求不高——不用特别“美观”,也不在乎是否完全符合Apple的规范,只要能让我的时钟窗口重新一直显示在所有窗口(包括全屏应用)之上就行。这是系统的bug吗?有没有可行的解决办法?

备注:内容来源于stack exchange,提问作者Chris McElroy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.15 08:48:02