Ich habe eine nstableview, die ich mit Daten von Kerndaten fülle.Kerndaten nstableview searchbar
NSManagedObject
import Foundation
import CoreData
@objc(Person)
public class Person: NSManagedObject {
@NSManaged public var firstName: String
@NSManaged public var secondName: String
}
Request
func requestData() {
let appdelegate = NSApplication.shared().delegate as! AppDelegate
let context = appdelegate.persistentContainer.viewContext
let request = NSFetchRequest<NSFetchRequestResult>(entityName: "Person")
do {
person = try context.fetch(request) as! [Person]
tableViewn.reloadData()
} catch { }
}
ich habe auch eine benutzerdefinierte Zelle Ansicht für meine Tableview. Ich fülle die Daten wie folgt aus:
func tableView(_ tableView: NSTableView, viewFor tableColumn: NSTableColumn?, row: Int) -> NSView? {
let view = tableView.make(withIdentifier: "Cell", owner: self) as? CustomCell
view?.txtfirstName.stringValue = person.firstName
view?.txtsecondName.stringValue = person.secondName
return view
}
Nun möchte ich eine searchbar verwirklichen möchte (was ich bereits in meiner Ansicht-Controller haben) für mit ersten oder zweiten Namen suchen.
aber ich habe keine Ahnung, wie ich das realisieren kann.
Wie haben Sie die Suchleiste implementiert, was sollte wann geschehen und was haben Sie versucht? – Willeke
Wenn Sie 'NSSearchField' und' NSArrayController' verwenden, binden Sie das/die Prädikat (e) des Suchfelds an das Filterprädikat des Array-Controllers. Keine Codierung erforderlich. – Willeke