2008-12-30 9 views
7

Je suis nouveau dans le développement de l'iPhone, et plusieurs vues (xib ou nib) sont vraiment confus. Voilà ce que je suis en train de réaliser ...Développement iPhone - Application complexe utilisant plusieurs vues/xib/nib

  1. avec Vue sur la barre d'onglets (onglet 1, onglet 2, onglet 3)
  2. Tab 2 Voir (Navigation Controller) 2.1 Sélection de ligne du tableau affiche une Affichage avec détails de la cellule 2.2 Le bouton Ajouter de la barre de navigation affichera une série d'interfaces de vue pour obtenir différents types d'informations (par exemple, Informations sur l'emplacement, Informations personnelles, etc.) - Nécessité d'un séquentiel. . Une fois les informations collectées, créez une nouvelle cellule dans l'onglet 2 Afficher la table, Enregistrer les informations associées dans une structure personnalisée et affichez une page d'achèvement avec 2 options (Ajouter une autre, Voir l'élément ajouté - vue en lecture seule)

I Je suis confus sur la façon de gérer ces vues multiples (les deux les reliant ensemble, et de communiquer des informations dans les deux sens). Est-ce que tout cela sera géré par ma classe de délégués d'application ou je peux/dois utiliser plusieurs classes de délégués? De toute façon, pouvez-vous me pointer dans la bonne direction - éventuellement un exemple d'application ou un tutoriel expliquant comment gérer une situation comme celle-ci ou plus complexe.

Toute aide à cet égard sera grandement appréciée.


J'ai vu les exemples TheElements et SeismicXML.

L'exemple de code d'Elements donne une idée de base de l'utilisation de UITabBarController et de UINavigationController, mais l'exemple ne traite pas de la transmission d'informations de Child Controller à Parent.

Dans mon cas, j'ai un UITabBarController, l'un des onglets montre un UINavigationController avec (+) dans le coin supérieur droit ou la barre de navigation. Maintenant (+) ouvrira une interface pour l'entrée de l'utilisateur et cette entrée sera utilisée pour stocker les données (disons en sql), et créera une nouvelle cellule de table dans UITableView intégrée dans UINavigationController. Maintenant, l'interface qui s'ouvrira en utilisant (+) prendra l'entrée de l'utilisateur en suivant une séquence d'étapes (comme Main> Step 1> Step 2> Complete). Chaque étape affichera une vue séparée. J'ai du mal à essayer de concevoir ce modèle. Ou, peut-être que je ne suis pas habitué à programmer sur Cocoa/iPhone et que je ne regarde pas directement. Quelles autres options ai-je - quand il s'agit de prendre l'entrée de l'utilisateur impliquant 20-30 champs (texte, liste, date, image e.t.c.). Pouvez-vous fournir des commentaires à ce sujet.

Merci pour votre aide.

Répondre

0

Peut-être this Google Books link peut vous aider dans la création d'applications de Multiview.

+0

J'ai lu tout ce livre. Je le recommande à tous ceux qui essaient d'apprendre le SDK iPhone. Cependant, ceci est une intro. Il ne couvre pas tous les détails ... –

0

Pour l'iPhone, vous voudrez gérer la plupart des vues et basculer entre les différents contrôleurs de vue. Pour votre cas, il s'agit de UITabBarController et UINavigationController. Pour les contrôler en dehors des actions de l'utilisateur et pour stocker des données, comme vous le souhaitez, vous aurez probablement besoin de créer vos propres sous-classes de ces contrôleurs. Quelques bons points de départ seraient TheElements (qui couvre les barres d'onglets et les vues tabulaires) et SeismicXML (les vues tabulaires et les contrôleurs de navigation).

La plupart des liaisons réelles peuvent être gérées dans Interface Builder, où vous pouvez créer et mettre en page le contenu de tous les onglets, mais vous devez utiliser vos sous-classes pour fournir des données (en particulier dans la vue tabulaire , où vous devrez configurer les données pour chaque cellule).

Hope this aidé,
Geoff