Zeigen Sie Dinge in einem App-modalen schwebenden Fenster an, das Benutzer durch Voreingabe unscharf filtern können. Sein Stil entspricht in etwa dem schwebenden Spotlight-Fenster.
Die Liste verwendet die standardmäßigen NSTableView
-Stile, sodass sie sowohl auf Big Sur als auch auf älteren macOS-Versionen genau richtig aussieht!
Dieses Modul ist bestrebt, den Speicher seiner Komponenten so weit wie möglich zu schonen. Dies bedeutet, dass Sie keinen Verweis auf das Fenster oder seinen Controller bereithalten müssen. Beide werden freigegeben, wenn die Aktion abgeschlossen ist.
Dies ist nützlich, wenn Sie beispielsweise eine begrenzte Sammlung von Dateien filtern möchten, z. B. „Zuletzt verwendete Dateien“, oder eine Liste bekannter Makros anzeigen möchten.
import FloatingFilter
// ...
let items = [
Item ( identifier : UUID ( ) , title : " Create new widget " ) ,
Item ( identifier : 202002200930 , title : " Open last document " ) ,
Item ( identifier : " custom-ID_123 " , title : " Show downloaded data " )
]
FloatingFilterModule . showFilterWindow ( items : items ) { selectedItems in
print ( " Selected: " , selectedItems . map { $0 . title } )
}
Fügen Sie dies Ihrer Cartfile
hinzu:
github "cleancocoa/FloatingFilter"
Dann lauf
$ carthage update
... und fügen Sie FloatingFilter.framework
von Carthage/Build/Mac
in Ihre App ein.
Copyright (c) 2020 Christian Tietze. Verteilt unter der MIT-Lizenz.
Fuzzy-Matching unterliegt dem Copyright (c) 2015 Yichi Zhang https://github.com/yichizhang/SwiftyStringScore