Init des données dans la classe NSArrayController
aranaud
Membre
Je n'arrive pas à trouver la méthode pour initialiser les données pour la classe NSArrayController.
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Si c'est oui, alors tu peux utiliser la méthode awakeFromNib pour y placer du code d'initialisation.
.
Le problème est qu'aucune valeur ne s'affiche dans le tableau qui y est lié.
J'ai utilisé la méthode : setContent pour tenter de charger un objet NSArray.
Le nombre de ligne est OK, mais les valeurs reste vide.
Pour information, j'ai lu les deux articles qui en parlent sur le site ainsi que l?article sur liaisons cocoa dû site Project Omega.
Mais je n'ai pas vu l'endroit où il faut faire l'init de l'objet avec des données ou je n'ai rien compris.
Nota : je ne pense pas que le problème vienne de l'interface car je me suis appuyé sur un exemple (liaisons cocoa).
Il y a quelque temps, dans mon AppController, j'avais tapé :
où popUpController est de classe NSArrayController.
Sinon, on peut tout faire dans I.B. mais il faut utiliser un NSObjectController qui fait le lien entre le NSArrayController et le AppController.
Il y a quelque temps, dans mon AppController, j'avais tapé :
où popUpController est de classe NSArrayController.
Sinon, on peut tout faire dans I.B. mais il faut utiliser un NSObjectController qui fait le lien entre le NSArrayController et le AppController.
Tu radotes Tiff ? ;D
J'en profite pour te rendre hommage.
Le code ci-dessus vient de chez ClicCool
Sinon, je n'ai pas tout compris au problème de aranaud. Et toi ?
Ben on manque un peu d'infos pour l'aider mieux sur ce coup là .
Si le nombre de lignes est OK c'est peut être que le tableau utilisé comme content répond correctement à count mais pas aux autres accesseurs indéxés ? :-\
Pour info, n'oublie que si la clé est: "maCle" ou "_maCle"
alors les "accessors" doivent être "setMaCle" et "maCle"
Je sais à charger un NSArray avec des NSDictionary à l'intérieur qui contient les données.
Que les clés soient identiques ou non, le résultat est idem.
Le but est de gérer une partie de l'interface (un tableau et des NStextField) avec les Bindings utilisant comme classe de contrôle NSArrayController.
Les liens dans l'interface sont Ok, la modification d'une valeur dans un NStextField est immédiatement répercutée dans le tableau.
Si vous voulez voir le fenêtre sur laquelle je conte l'utilisée, c'est pour mon application (http://aranaud.farge.free.fr/), la fenêtre principale, pour le tableau opération.
Le problème est que je n'arrive pas à initialiser les valeurs.Â
[EDIT]
Petite parenthèse, un site Mac (MacGé je crois) a fait de la pub pour un petit logiciel de budget, il était question d'un autre dans le sujet. J'ai testé les deux. Et bien si moi je suis un débutant, il y en a d'autres ! Je n'aurais jamais osé rendre publiques de telles applications. Alors bon courage Aranaud, il manque encore le petit logiciel de gestion de compte qui soit vraiment fonctionnel. Avec les bindings, ce ne doit pas être trop dur.
Le seul problème, s'est qui ont omis de dire comment charger ou récupérer les données.
Sinon, des logiciels de gestion de comptes, il en existe plein il me semble sur notre plateforme. Mais je n'ai pas d'adresses.
Le tien est bien parti aranaud !
Déjà la classe Book ne sert strictement à rien. Elle pourrait, et encore, s'il y avait des initialisations un peu spéciales peut-être. Ce n'est qu'un dictionnaire, alors ouste le Book, NSMutableDictionary est aussi bien, pas de code à taper. Bon, les pros ne seront sans doute pas d'accord avec moi, mais dans un premier temps, inutile de s'embêter avec ça.
Ensuite, pas de NSMutableArray *mesLivres dans MyDocument.h, donc impossible d'enregistrer les données dans un fichier.
Sans parler d'enregistrement, dans MyDocument.m :
Et dans IB, il suffit de binder le contentArray de Book Controller à File's Owner (qui n'est autre que MyDocument) via le Model Key Path mesLivres.
Pour l'enregistrement, pas d'idée sur le moment, pour ce genre d'appli je n'utilise pas les NSDocument. Mais c'est assez simple.
Je vais essayer en utilisant la classe NSMutableDictionary.
Il me semble que soient les méthodes content et setContent qui faut que j'utilise.
Edit :
C'est bon, sa marche.
Voici le lien pour avoir le code modifier : http://aranaud.farge.free.fr/telechargement/Bibliotecha 2.zip
:spot:
M'enfin, bizarre ton histoire précédente du bon nombre lignes qui s'affichaient vides.
Bon, ben, y a plus qu'à compléter l'appli. On aura la version 1.0 quand ? :sors: