Frage

Die auf meinem Dokument basierende Kerndatenanwendung (unter Verwendung von Bindungen in IB) hat zwei Entitäten: Mitarbeiter (mit einem Attribut Mitarbeitername ) und Arbeitszeitblatt (mit den Attributen timeDescription und entryDate ). Mitarbeiter hat eine Beziehung ( Mitarbeiterdetails ) zu vielen ( Mitarbeiterzeitblatt ) mit Arbeitszeitblatt .

Ich erstelle ein Master-Detail, das für einen TimeSheet-Eintrag eingerichtet ist.

Für den Master habe ich eine einspaltige tableView, deren Wert an Folgendes gebunden ist: EmployeeController (ein NSArrayController, der die Employee-Entität verwendet), arrangierte Objekte , Mitarbeitername .

Ich habe einen detailController (einen anderen NSArrayController), der als NSMutableDictionary eingerichtet ist und dessen contentSet an EmployeeController , Auswahl , employeeTimeSheet .

Ich habe dann Detail tableView mit drei Spalten, deren jeweiliger Wert an DetailController , arrangierte Objekte , employeeDetails.employeeName gebunden ist (Spalte 0), Eintragsdatum (Spalte 1) und Zeitbeschreibung (Spalte 2).

Jetzt funktioniert alles einwandfrei. Ich kann einen Mitarbeiter aus der Mastertabelle auswählen und in der Detailtabelle werden alle mit diesem Mitarbeiter verknüpften Arbeitszeittabelleneinträge angezeigt. Ich kann Einträge mit dem ausgewählten Mitarbeiter hinzufügen, alles funktioniert hervorragend.

Mein Problem ist, dass ich anstelle einer tableView als Master-Ansicht einen NSPopupButton an seiner Stelle haben wollte, aus dem ich einen Mitarbeiter auswählen und alle mit diesem Mitarbeiter verknüpften Zeiteinträge anzeigen kann.

Ich habe jede Kombination aus Inhalt, Wert, arrangierten Objekten, ausgewählten Objekten usw. mit jeder Kombination der Controller ausprobiert, die ich habe, aber ich kann den NSPopupButton nicht dazu bringen, sich ähnlich wie die einspaltige tableView zu verhalten.

Ich habe vergeblich nach weiteren Informationen dazu gesucht und die Bindungsdokumentation mehrmals durchgelesen, bin aber immer wieder durcheinander geraten. Ich denke, das sollte relativ einfach sein, aber ich kann es einfach nicht verstehen. Ich habe mir jetzt fast zwei Tage lang den Kopf zerbrochen, bevor ich hier poste.

Kann jemand darauf hinweisen, wo ich falsch liege? Ich würde Postleitzahl posten, aber das ist nicht wirklich angemessen, da es hauptsächlich eine IB-Sache ist.

Billy.

War es hilfreich?

Lösung 2

Ok, ich habe es gefunden.Ich wusste, dass ich es nach dem Posten hier sofort finden würde.

Ich habe den NSPopupButton -Inhalt an EmployeeController , arrangierte Objekte , contentValue an EmployeeController , arrangierte Objekte , Mitarbeitername und selectedIndex an EmployeeController , selectionIndex .

Funktioniert hervorragend.

Billy.

Andere Tipps

Übrigens: Der detailController wird "automatisch" mit einem neuen Mitarbeiterobjekt gefüllt.Stellen Sie sicher, dass "manageObjectContext" auf denselben Controller (employeeController) festgelegt ist.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top