2017-10-19 46 views
0

J'essaye de créer une vue où je recueille des informations d'utilisateur comme le prénom, le nom, DoB parmi d'autres. La vue créée dans le storyboard ressemble à ceci - enter image description hereCréer un UIView avec plusieurs éléments

Cependant, la définition de contraintes sur chacun d'entre eux s'avère très compliquée. Je suis très enclin à créer ceci dans le code, et bien sûr cela ressemble à trop de lignes même dans le code. Il doit y avoir une meilleure façon de le faire.

Quelle est la meilleure façon de le faire? Est-ce que je les mets dans plusieurs vues de pile et les empile dans des vues de pile supplémentaires? Quelle est la pratique standard habituelle? Je suis très nouveau à la programmation iOS et la recherche sur stackoverflow et google ne m'a donné aucun résultat.

Répondre

2

Utilisez toujours empiler vue si vous le pouvez, ils sont la meilleure solution car ils gèrent de nombreux problèmes pour vous. Dans cette situation, je mettrai:

  • Prénom Étiquette et prénom txt dans une vue pile verticale (A)
  • Nom Étiquette et Nom Txt dans une vue pile verticale (B)
  • Cup, Cupertino, Cup Txt dans une vue de pile horizontale (C)
  • DoB Étiquette dans une vue de pile horizontale (même si un seul bouton est mieux placé dans une vue de pile pour vous aider à centrer le bouton (D)
  • Le bouton Terminé dans une vue de pile horizontale (même si seulement un bouton est mieux placé dans une pile vi ew pour vous aider à centrer le bouton (E)
  • A, B, D, C, E en vue de pile verticale

Maintenant, il peut être salissant, mais ne vous inquiétez pas. Vous devez définir les contraintes et les paramètres de la vue de pile à ajuster. Essayez les différentes options, la seule façon de comprendre comment configurer une vue de pile correcte est d'essayer. Après un certain temps, vous pourrez créer une interface complexe en quelques minutes.

Pour une meilleure compréhension, consultez la documentation: https://developer.apple.com/library/content/documentation/UserExperience/Conceptual/AutolayoutPG/LayoutUsingStackViews.html

Et regardez cette vidéo d'Apple: Autolayout Apple Video

1

Vous pouvez utiliser un UIStackView horizontal avec la distribution remplissage égale ou vous pouvez suivre le tutoriel suivant:

enter image description here