Respuestas:
CGRect frameRect = textField.frame;
frameRect.size.height = 100; // <-- Specify the height you want here.
textField.frame = frameRect;
No puede cambiar la altura del estilo de borde rectángulo redondeado. Para establecer la altura, simplemente elija cualquier estilo de borde que no sea el borde redondeado en Xcode:
¡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ámbielo a cualquiera de los otros estilos y configure la altura deseada. En el código, cambie el estilo del borde hacia atrás.
textField.borderStyle = UITextBorderStyleRoundedRect;
viewWillLayoutSubviews
. leftView
Agregué una imagen al campo de texto y algo de texto, y cuando se hace viewDidLoad
esto, ambos se estiran de manera extraña.
textField.borderStyle = .RoundedRect
Si está utilizando el diseño automático, puede hacerlo en el tablero de la historia.
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: cree 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 restricción de altura
borderStyle
cualquier cosa excepto redondeada. Use Editor -> Size to Fit Content
para que el diseño haga lo suyo. Use el inspector de propiedades en su UITextField
para verificar su altura. Use esto para configurar su restricción de altura, y ahora puede cambiar la parte borderStyle
posterior a la redondeada.
1.) Cambie el estilo del borde en InterfaceBuilder.
2.) Después de eso puedes cambiar el tamaño.
3.) Cree un IBOutlet en su TextField e ingrese el siguiente código para viewDidLoad()
volver a cambiar el BorderStyle.
textField.borderStyle = UITextBorderStyleRoundedRect;
Swift 3:
textField.borderStyle = UITextBorderStyle.roundedRect
En su vista, aparecerá Establecer las esquinas como redondas
yourUITextField.borderStyle = UITextBorderStyleRoundedRect;
Siga estos dos simples pasos y aumente la altura de su UItextField
.
Paso 1: haga clic derecho en el archivo XIB y ábralo como en "Código fuente".
Paso 2: encuentre la misma UITextfield
fuente y configure el marco que desee.
Puede usar estos pasos para cambiar el marco de los controles de Apple.
Una actualización para iOS 6: usando el diseño automático, aunque todavía no puede establecer la altura de UITextField desde el Inspector de tamaño en el Creador de interfaces (a partir de Xcode 4.5 DP4 al menos), ahora es posible establecer una restricción de Altura en puede editarlo desde el Creador de interfaces.
Además, si está configurando la altura del marco por código, el diseño automático puede restablecerlo dependiendo de las otras restricciones que pueda tener su vista.
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 y luego simplemente cambiar el tipo de borde de UITextfield a cualquier otro que no sea el tipo de esquina redondeada predeterminado. Luego puede estirar o cambiar fácilmente los atributos de altura desde el interior del editor.
@IBDesignable
class BigTextField: UITextField {
override func didMoveToWindow() {
super.didMoveToWindow()
if window != nil {
borderStyle = .roundedRect
}
}
}
UITextField
conBigTextField
.Border Style
a none
.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 establezca la clase como una subclase de UITextField
que obliga al estilo a redondearse rect.
@interface JLTForcedRoundedRectTextField : UITextField
@end
@implementation JLTForcedRoundedRectTextField
- (void)awakeFromNib
{
self.borderStyle = UITextBorderStyleRoundedRect;
}
@end
Me evitó tener que hackear el archivo XIB o escribir código de estilo en mi controlador de vista.
La altura de un UITextField no es ajustable en el Inspector de atributos 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 que se requiera para satisfacer el sistema de distribución automática, 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 pueden eliminarse (Borrar restricciones) y el campo de texto permanecerá a la altura ajustada.
Funciona de maravilla.
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 lo que desee ...
Puede usar la propiedad de marco de campo de texto para cambiar el marco Like-Textfield.frame = CGRECTMake (eje x, eje y, ancho, alto)
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 haga en su código.
¡Feliz codificación!
Si está creando mucho 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 solo puedes llamar
[customTextField setFrame:<rect>];