NSSplitViewController, NSArrayController et NSTableView désespérément vide.
Bonsoir à tous, j'ai un problème assez gênant.
Je voulais m'écrire vite fait une application qui pouvait me gérer facilement mes TP a rendre. Pour le vite-fait on repassera...
J'utilise Core Data et donc des NSArrayController. J'ai deux entités fondamentales: Assignment et Subject. Je me suis donc dit que j'allais faire 2 NSArrayController sur ces deux entités et que j'allais le passer proprement à chaque fois que prepareForSegue est appelé. Déjà NSSplitViewController n'appelle pas cette méthode, donc je passe mes controllers dans viewDidLoad:
override func viewDidLoad() {
super.viewDidLoad()
splitViewItems[0].canCollapse = false
splitViewItems.forEach {
passAssignementArray($0.viewController)
passSubjectArray($0.viewController)
}
}
Les arrayControllers sont bien passés. Seulement quand j'essaie d'afficher leur contenu dans une NSTableView, c'est désespérément vide. Alors que si j'affiche une des vues hors du NSSplitView ça fonctionne...
Voilà un exemple pour mieux comprendre, c'est la vue principale de l'application:
Réponses
On pourrait avoir le projet ?
Certainement un mauvais binding.
Le chapitre 11 de ce bouquin (qui existe en français) explique bien ce type de projet autant que je me souvienne :
http://ptgmedia.pearsoncmg.com/images/9780321774088/samplepages/0321774086.pdf
Voilà j'ai enfin le temps de répondre. J'ai changé l'architecture en passant le MOC au lieu du NSArrayController. J'ai du le mettre dynamic.
Je comprends pas cependant pourquoi ça ne marchait pas a la base...
C'est vrai que ça tien plus de la magie noire qu'autre chose cette affaire.
Il nous manque pas mal de classes pour bien tout comprendre. NSProxy notamment.
Les sources de GNUSTEP n'aident pas beaucoup à ce niveau.