2017-10-18 8 views
0

Quelle est la meilleure façon de concevoir une mise en page de formulaire, j'ai essayé d'utiliser UITableView statique, mais je ne sais pas si c'est une bonne pratique quand j'ai beaucoup de cellules et si J'utilise des cellules prototypes, il m'est difficile d'interagir avec les éléments à l'intérieur des cellules. L'autre forme est sans utiliser UITableView seulement un UIScrollView, mais je ne sais pas quelle est la meilleure forme. En bref, quelle est la méthode la plus utilisée pour concevoir une mise en forme de formulaire?Quelle est la meilleure façon de concevoir une mise en page de formulaire

EDIT: Je dois réaliser quelque chose comme indiqué dans l'image.

EDIT2: Dans le cas d'un CustomCell ayant une vue sélecteur à l'intérieur, il est préférable que la même cellule délègue de l'UIPickerView ou ce devrait être le viewcontroller qui délègue de la pick pick?

Maintenant, mes délégués CustomCell d'un tableau UIPickerView et les chaînes d'options et les méthodes de protocole sont dans cette classe, c'est bon ?, Dans ce cas, que puis-je faire lorsque le tableau est composé d'objets personnalisés? , J'ai un tableau de personnes et je dois montrer dans le pick-up le nom de la personne, mais je dois retourner au contrôleur de la vue de l'âge de la personne. Dans ce cas, je dois créer une autre cellule personnalisée qui gère ce type de tableau (et une autre différente quand j'en ai besoin pour gérer un tableau de types différent), ou y a-t-il un moyen de l'unifier pour éviter de créer classes de cellules?

enter image description here

Répondre

2

La meilleure méthode ici serait toujours d'utiliser UITableView. Vous pouvez concevoir vos propres cellules personnalisées, ce qui vous donne une meilleure flexibilité dans le futur. Si les cellules ont un type similaire d'éléments et que vous voulez réduire votre charge de travail pour la mise en page automatique, vous pouvez certainement utiliser UIStackView dans la cellule personnalisée que vous concevez comme suggéré par Donovan.

La principale raison de l'utilisation de UITableView est qu'elle vous donne une grande flexibilité en termes de saisie de l'indexPath pour une ligne particulière. Même si le formulaire augmente en termes de nombre de lignes qu'il doit conserver, vous n'avez pas besoin d'ajouter un UIScrollView distinct à la même chose. Si la conception de certaines lignes change, alors que d'autres sont toujours de la même conception, vous pouvez toujours utiliser une cellule personnalisée et placer un identifiant de cellule différent dans les nouvelles cellules et utiliser le "dequeueReusableCellWithIdentifier" et incorporer le nouveau design.

Espérons que cela aide!

+0

Voilà ce que je fais! donc, j'ai une autre question à ce sujet, j'ai édité la question, s'il vous plaît vérifier à nouveau. Et merci!!!! –

+0

Je ne l'ai pas compris complètement mais en espérant qu'il est similaire à quelque chose de ceci: https: //stackoverflow.com/questions/39494594/how-to-initialize-uipickerview-inside-custom-tableviewcell Aussi, en termes de name array étant la vue du sélecteur mais la valeur renvoyée est un tableau d'âge, n'est-ce pas beaucoup plus facile d'utiliser un dictionnaire à son tour. L'utilisation d'un dictionnaire réduit la complexité et vous pouvez récupérer la valeur souhaitée en fonction de la paire valeur/clé. – ShivamD

+0

Vous êtes les bienvenus!Codage heureux :) – ShivamD

0

vues tabulaires sont généralement utilisés lorsque vous affichez des données à l'utilisateur de quelque sorte. Pour votre cas, pourquoi ne pas essayer UIStackView? Here est un guide pour vous aider à démarrer.

+0

@MartinRegas: Avez-vous besoin que le formulaire soit dynamique (changez souvent, ou ayez des champs différents pour différents utilisateurs, etc.), ou le formulaire aura-t-il toujours les mêmes champs? –

+0

Merci, la forme devrait être dynamique, j'ai mis à jour la question. –