2010-07-03 3 views
2

Je n'ai pas trouvé de réponse à cette question n'importe où, mais cela semble être un problème typique: je suis dynamiquement (à partir d'un fichier xml) créant une vue pour afficher "Questions" que je prends du fichier XML. J'ai des problèmes pour afficher des questions à choix multiples. Je suis en train approche suivante:UITableView dans un UITableViewCell? Quel est le meilleur design?

Question 1 
MultipleChoiceQuestion 2 
--First Option 
--Second Option 
--Third Option 
Question 3 
Question 4 
MultipleChoiceQuestion 5 
--First Option 
--Second Option 
and so on... 

Alors, mon idée est la suivante: j'ai une première UITableView et ligne pour chaque question « normale » question, et une deuxième UITableView pour chaque « Multiple Choice » qui devrait être chargé dans un ligne du premier UITableView comme je l'ai montré avant.

Est-ce une bonne approche ou vous avez un meilleur modèle de conception pour ce problème?

Merci beaucoup!

Répondre

0

Non, non! Je t'en prie, non! Ne placez pas de gros éléments de l'interface utilisateur comme des vues de table dans une tableviewcell (et ne les faites pas défiler sûrement = P).

Que diriez-vous de permettre à l'utilisateur de sélectionner une question (une question par ligne), puis d'afficher une vue de sélection avec des réponses, à l'endroit où le clavier serait normalement?

Tout comme une liste de balises de sélection HTML dans Mobile Safari. Vous pouvez également utiliser une vue de table groupée avec un groupe par question, y compris les réponses personnalisables.

+0

+1 Ou simplement des cellules personnalisées. Calculer la hauteur n'est pas si difficile. Règle d'or: Si vous pensez qu'un problème est commun mais que personne ne l'a fait auparavant, il y a probablement une bonne raison à cela. – Eiko

+0

Merci pour la réponse rapide Baard. Je ne peux pas utiliser un sélecteur, car l'utilisateur doit pouvoir choisir plusieurs options. Donc, je vais essayer votre deuxième recommandation: vue de table groupée avec un groupe par question! Encore merci !!! – jcdmb

+0

N'oubliez pas de marquer ceci comme accepté si cela vous a aidé;) De plus, esquisser votre idée d'application et l'interface utilisateur sur papier avec un crayon (ou sur une pierre avec un marteau) avant de créer votre application finale dans Xcode/IB aide vous évitez ces frustrations. –

10

Il y a un tutoriel pour créer UITableViewCells personnalisés avec UITableView intérieur à: http://iosstuff.wordpress.com/2011/06/29/adding-a-uitableview-inside-a-uitableviewcell/

iOS SDK est flexible et vous pouvez ajouter un élément de sous-classe UIView aux cellules Tableview. Jetez un oeil à «Pulse», son application de lecture de nouvelles qui a remporté le prix Apple Design Award. Cette application a des images défilantes horizontalement et ses développeurs ont expliqué comment ils ont utilisé UITableViews pour créer cela. Alors n'ayez pas peur de mettre en œuvre de nouvelles idées, peu importe à quel point elles peuvent apparaître.

Bonne chance!

Questions connexes