0

要遍历我的 macOS 应用程序中的所有窗口,我使用enumerateWindows(options:using:)这样的方法:

NSApplication.shared.enumerateWindows(options: .orderedFrontToBack, using: { 
    (window: NSWindow, stop: UnsafeMutablePointer<ObjCBool>) in
    if let vc = window.contentViewController as? SomeCustomViewController {
        if someCondition {
            stop = true // “Cannot assign to value: 'stop' is a 'let' constant”
        }
    }
})

我想在someCondition遇到时停止枚举,但我无法将其设置UnsafeMutablePointer<ObjCBool>true:Xcode 告诉我这stop是一个let常量。

我究竟做错了什么?

4

1 回答 1

1

stop是一个指针,你必须设置pointee

stop.pointee = true
于 2018-03-31T17:28:27.953 回答