J'ai une petite application de données de base. J'ai une sous-classe d'un NSObjectController agissant comme la liaison entre la vue et le modèle et un NSTextField sur la vue pour l'utilisateur à taper.NSObjectController - setAutomaticallyPreparesContent:
Lorsque la fenêtre s'ouvre, le champ de texte est modifiable car les liaisons sont définies sur mon NSObjectController sous-classé, la clé du contrôleur sur «content» et le chemin de clé du modèle sur un attribut de mon entité.
Si je tape du texte, enregistrez le fichier et le rouvrez, le texte de NSTextField n'est pas présent. Pour tester, j'ai un bouton connecté au sélecteur add: du contrôleur et lorsque vous appuyez sur le bouton tout fonctionne bien - vous pouvez entrer du texte dans un NSTextField, vous pouvez enregistrer le document, vous pouvez l'ouvrir à nouveau.
Comment préparer l'objet lorsque la plume se charge?
Dans ma méthode init dans ma sous-classe de la NSObjectController je:
[self setAutomaticallyPreparesContent:YES];
puis-je en MyDocument: windowControllerDidLoadNib (oc est le IBOutlet à l'objectcontroller sous-classé dans IB):
[oc fetchWithRequest:nil merge:NO error:&error];
mais cela n'a pas fonctionné. J'ai besoin de créer le contenu pour que l'utilisateur puisse commencer à taper.
Merci
OK, je lis et En lecture, je ne l'ai toujours pas mais je pense que je dois créer une nouvelle instance de mon NSObjectController et l'ajouter à mon managedObjectContext. Pour un document existant, cependant, je suppose que MyDocument créera le contrôleur d'objet à partir de NSPersistantDocument. Suis-je sur la bonne voie? – Mark