3 votes

Sérialisation/stockage d'une UIView et de ses sous-vues

Je suis un développeur iOS relativement nouveau, avec la plupart de mes expériences précédentes provenant de .NET. Mon application est un système semblable à un canevas, c'est-à-dire qu'il y a un UIView parent qui contient tous les objets que l'utilisateur place/redimensionne/etc. en tant que sous-vues. Je veux pouvoir enregistrer ces positions/configurations dans des fichiers nommés.

En .NET, j'aurais simplement sous-classé UIView, je lui aurais donné une propriété "title", puis j'aurais sérialisé cette propriété dans un fichier, avant de les désérialiser pour les recharger, mais en Cocoa, je suis perdu.

Au départ, je pensais pouvoir le faire en utilisant le NSCoding, mais cela ne semble pas être une bonne solution pour l'enregistrement de plusieurs fichiers.

J'ai donc consulté Core Data, mais je ne sais pas comment créer des objets Core Data à partir de classes Cocoa UIKit existantes, comme UIView.

J'ai passé un certain temps à chercher sur Google et je n'ai trouvé aucune information sur ce genre de situation. Que dois-je utiliser, et quelle est la meilleure façon de procéder ?

4voto

Caleb Points 72897

Vous avez probablement pourrait le faire avec NSKeyedArchiver, puisque UIView implémente NSCoding. Une conception plus orientée MVC consisterait toutefois à demander à l'utilisateur de manipuler un modèle de données en déplaçant les vues. Pour sauvegarder, vous archivez le modèle plutôt que les vues elles-mêmes.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X