iphone ios xcode uitextfield

iphone - Cómo establecer la altura de UITextField?



uitextfielddelegate (18)

La altura de UITextField no se puede ajustar en Atributos Inspector solo cuando tiene el estilo de borde de esquinas redondeadas predeterminado, sino que agrega una restricción de altura (más cualquier otra restricción necesaria para satisfacer el sistema de ajuste automático, a menudo simplemente usando Agregar restricciones faltantes) y ajustar la restricción ajustará la altura del campo de texto. Si no desea restricciones, las restricciones se pueden eliminar (Limpiar restricciones) y el campo de texto permanecerá en la altura ajustada.

Funciona de maravilla.

Estoy usando un UITextField . Quiero aumentar su altura, pero no he encontrado ninguna propiedad para hacer esto. ¿Cómo puedo conseguir esto?


swift3

@IBDesignable class BigTextField: UITextField { override func didMoveToWindow() { super.didMoveToWindow() if window != nil { borderStyle = .roundedRect } } }

Constructor de interfaz

  • Reemplace UITextField con BigTextField .
  • Cambia el Border Style del Border Style a none .

  1. Elija el estilo de borde como no redondeado

  1. Establece tu altura

en su vista MostrarApare las esquinas como redondas

yourUITextField.borderStyle = UITextBorderStyleRoundedRect;

  1. Disfruta de tu redonda y alta UITextField

¡Finalmente encontré la solución para esto!

Como hemos encontrado, IB no nos permite cambiar la altura del estilo del borde de la esquina redondeada. Así que cámbialo a cualquiera de los otros estilos y establece la altura deseada. En el código, cambie el estilo del borde hacia atrás.

textField.borderStyle = UITextBorderStyleRoundedRect;


1.) Cambia el estilo del borde en el InterfaceBuilder.

2.) Después de eso, puedes cambiar el tamaño.

3.) Cree un IBOutlet en su TextField e ingrese el siguiente código en su viewDidLoad() para volver a cambiar BorderStyle.

textField.borderStyle = UITextBorderStyleRoundedRect;

Swift 3:

textField.borderStyle = UITextBorderStyle.roundedRect


En Swift 3 use:

yourTextField.frame.size.height = 30


Esto es bastante simple.

yourtextfield.frame = CGRectMake (yourXAxis, yourYAxis, yourWidth, yourHeight);

Declare su campo de texto como una propiedad global y cambie su marco donde quiera que lo desee en su código.

Feliz Codificación!


Mi patética contribución a este tonto problema. En IB, establezca el estilo en none para que pueda establecer la altura, luego en IB configure la clase para que sea una subclase de UITextField que obligue al estilo a redondearse rect.

@interface JLTForcedRoundedRectTextField : UITextField @end @implementation JLTForcedRoundedRectTextField - (void)awakeFromNib { self.borderStyle = UITextBorderStyleRoundedRect; } @end

Me impidió tener que piratear el archivo XIB o escribir código de estilo en mi controlador de vista.


No puede cambiar la altura del estilo de borde recto redondeado. Para establecer la altura, simplemente elija cualquier estilo de borde que no sea redondeado en Xcode:


Puede usar la propiedad de marco del campo de texto para cambiar el marco Like-Textfield.frame = CGRECTMake (eje x, eje y, ancho, alto)


Sé que esta es una pregunta antigua, pero solo quería agregar si desea cambiar fácilmente la altura de un UITextField desde el interior de IB, luego simplemente cambie ese tipo de borde de UITextfield a cualquier otro que no sea el tipo de esquina redondeada predeterminada. Luego puede estirar o cambiar los atributos de altura fácilmente desde el interior del editor.


Si está creando una gran cantidad de UITextFields , puede ser más rápido subclasificar UITextView y anular el método setFrame con

-(void)setFrame:(CGRect)frame{ [self setBorderStyle:UITextBorderStyleRoundedRect]; [super setFrame:frame]; [self setBorderStyle:UITextBorderStyleNone]; }

De esta manera puedes simplemente llamar
[customTextField setFrame:<rect>];


Si está usando Diseño Automático, puede hacerlo en el Story Board.

Agregue una restricción de altura al campo de texto, luego cambie la constante de restricción de altura a cualquier valor deseado. Los pasos se muestran a continuación:

Paso 1: crea una restricción de altura para el campo de texto

Paso 2: Seleccione Restricción de altura

Paso 3: Cambiar el valor constante de la Resistencia de Altura


Siga estos dos sencillos pasos y aumente la altura de su UItextField .

Paso 1: haga clic con el botón derecho en el archivo XIB y ábralo como en "Código fuente".

Paso 2: Encuentre el mismo origen de UITextfield y configure el marco como desee.

Puede usar estos pasos para cambiar el marco de cualquier control de manzana.


Una actualización para iOS 6: utilizando el diseño automático, aunque todavía no puede establecer la altura del UITextField desde el inspector de tamaño en el generador de interfaz (al menos desde Xcode 4.5 DP4), ahora es posible establecer una restricción de altura en , que puede editar desde el Interface Builder.

Además, si está configurando la altura del marco por código, el diseño automático puede restablecerlo en función de las otras restricciones que pueda tener su vista.


prueba esto

UITextField *field = [[UITextField alloc] initWithFrame:CGRectMake(20, 80, 280, 120)];


CGRect frameRect = textField.frame; frameRect.size.height = 100; // <-- Specify the height you want here. textField.frame = frameRect;


UITextField *txt = [[UITextField alloc] initWithFrame:CGRectMake(100, 100, 100, 100)]; [txt setText:@"Ananth"]; [self.view addSubview:txt];

Los dos últimos argumentos son ancho y alto, puede establecer como desee ...