Hallo zusammen,
versuch gerade das Thema NSOutlineView mit Swift 3 für macOS umzusetzen.
Habe dafür ein YouTube Tutorial gefunden, welches mir folgende Ergebnis bringt:
Bildschirmfoto 2017-05-05 um 13.09.06.png
Alles anzeigen
Alles anzeigen
Soweit so gut - versuche auch aktuell zu verstehen, was wie und warum -> in Bezug auf den Code.
allerdings stelle ich mir hier die Frage: wie kann das outline view mit Daten aus Core Data füllen?
in dem Beispiel werden ja feste Werte mit einem dict gelöst.
versuch gerade das Thema NSOutlineView mit Swift 3 für macOS umzusetzen.
Habe dafür ein YouTube Tutorial gefunden, welches mir folgende Ergebnis bringt:
Bildschirmfoto 2017-05-05 um 13.09.06.png
Quellcode: ViewController.swift
- import Cocoa
- class ViewController: NSViewController, NSOutlineViewDataSource, NSOutlineViewDelegate {
- @IBOutlet var treeController: NSTreeController!
- @IBOutlet weak var outlineView: NSOutlineView!
- override func viewDidLoad() {
- super.viewDidLoad()
- addData()
- }
- func addData() {
- let root: [String : Any] = [ "name": "Max Mustermann", "isLeaf": false ]
- let dict: NSMutableDictionary = NSMutableDictionary(dictionary: root)
- dict.setObject([Playlist()], forKey: "children" as NSCopying)
- treeController.addObject(dict)
- }
- func isHeader(item: AnyObject) -> Bool {
- if let item = item as? NSTreeNode {
- return !(item.representedObject is Playlist)
- } else {
- return !(item is Playlist)
- }
- }
- func outlineView(_ outlineView: NSOutlineView, viewFor tableColumn: NSTableColumn?, item: Any) -> NSView? {
- if isHeader(item: item as AnyObject) {
- return outlineView.make(withIdentifier: "HeaderCell", owner: self)
- } else {
- return outlineView.make(withIdentifier: "DataCell", owner: self)
- }
- }
- }
Quellcode: Playlist.swift
Soweit so gut - versuche auch aktuell zu verstehen, was wie und warum -> in Bezug auf den Code.
allerdings stelle ich mir hier die Frage: wie kann das outline view mit Daten aus Core Data füllen?
in dem Beispiel werden ja feste Werte mit einem dict gelöst.