Comment définir la hauteur pour un textfield dans la taille de l'inspecteur
j'ai créé un objet UITextField de type arrondi textfield, à l'aide de Interface Builder,afin de définir la Hauteur d'un textfield sa fenêtre était désactivé(pas de jeu de toute la hauteur manuellement) dans SizeInspector.donc, si nous voulons mettre en hauteur manuellement,quelle est la procédure à suivre.
Une chose que je voudrais mentionner est ,nous pouvons le faire que dans le cadre de codage,mais ce que je voudrais savoir, c'est ,comment pouvons-nous réaliser que dans interfacebuilder.
Des réponses de vous avez toujours été apprécié.
Vous devez vous connecter pour publier un commentaire.
Malheureusement, vous ne pouvez pas définir la Hauteur d'un objet UITextField à l'aide de Interface Builder. Vous aurez à définir par programmation et être sûr qu'il n'a pas enfreint les règles de iPhone Human Interface Guidelines
UITextBorderStyleRoundedRect
style. Si vous changer, vous pouvez redimensionner l'IB.Changer le style de bordure, comme ceci:
Vous pouvez modifier la hauteur de
UITextField
en modifiant le .xib fichier. Juste l'ouvrir avec Textedit ou Dashcode et de recherche pour laIBUITextField
. Edit pourNSFrame
paramètre de la taille que tu veux.augmentation de la taille de la police et de la hauteur de l'augmentation
Changer le Style de Bordure de la propriété de la zone de texte pour autre chose que le rectangle arrondi. Après cela, vous pouvez régler la hauteur de la boîte.
Clic droit sur .xib fichier et cliquez sur "Ouvrir en tant Que"-> "Code Source". Ensuite, la recherche de UITextField de NSFrame. Modifier la hauteur que vous voulez.
Succès de la solution avec ma condition:
Après avoir essayé tous les moyens ci-dessus, je ne pouvais pas changer la hauteur de
UITextField
.Enfin, j'ai découvert que j'ai mis
UITextField
en vue de la pile (ou elle a été affectée par certaines contraintes).Donc, j'ai ajouté
Height Constraint
pourUITextField
puis mettre ma hauteur prévue dansConstant
de Contrainte.Et il fonctionne.
Spécialement, il fonctionne pour tous les Border-style (Aucun, Ligne, Lunette, RoundedRect).
Aucun code n'est nécessaire.
Après un peu de jouer autour, j'ai réalisé que UITextField peut être considéré comme un UIButton (Arrondi rect style) avec un UILabel sur le dessus de cela. Ou, c'est un UITextView sur le dessus de UIButton Arrondie rect style. Le nombre de lignes, les dimensions et la position de l'étiquette à l'intérieur du bouton peut être facilement ajustée en IB.
Dans mon cas, je voulais un texte en lecture seule-champ j'ai donc utilisé UILabel sur le dessus de UIButton. J'ai ajusté la taille du bouton selon l'exigence et aussi la taille de l'étiquette. J'ai également eu décochez la case "Activer la case" pour le bouton de l'IB, de sorte qu'il n'obtient pas mis en évidence sur le toucher.
Vous pouvez facilement changer cela en utilisant un code source. Juste à droite, cliquez sur votre storyboard, ouvrir en tant que source code, puis recherchez votre champ de texte et modifier la hauteur.
La façon la plus simple que j'ai trouvé pour accomplir cela est de changer le style de bordure, puis de modifier les autres attributs à votre goût. Voici un exemple.
!
J'ai résolu textfield (avec arrondi rect) hauteur du problème. Vous devez définir la hauteur de contrainte pour votre objet textfield.
Définir la hauteur de contrainte pour Textfield.
Nous pouvons changer la hauteur d'un Champ de Texte avec n'importe quel type de style de bordure autre que le rectangle arrondi simplement en les faisant glisser. Mais pour le Rectangle Arrondi champs de Texte, il n'est pas possible...bien sûr, nous pouvons changer la hauteur à l'aide du code.
Et ici j'ai trouvé une façon simple. Il a travaillé pour moi
Sélectionnez le champ de texte et au-dessous, à droite, nous pouvons voir les broches option..
Il y sélectionner la hauteur de la contraindre, il est de 30 pré-défini...
Il a travaillé pour moi 🙂 Pouvez utiliser ce scénario pour UISwitch, Segment, etc..
Comme @peterdoesco.de dit, il suffit d'ajouter une Hauteur de contrainte, et changer sa valeur, cela fonctionne très bien.