notes - ios 12 iphone 6
Tipo de auto-capitalizaciĆ³n UITextField-AplicaciĆ³n para iPhone (7)
¿Hay alguna manera de establecer el tipo de autocapitalization para un UITextField
modo que la primera letra de cada palabra esté en mayúscula por defecto?
Este es un ejemplo de lo que quiero
En Xamarin.ios / Monotouch esto funcionó para mí:
textField.AutocapitalizationType = UITextAutocapitalizationType.Words;
Establecer la propiedad de capitalization
en "Palabras" sugerirá que el usuario ingrese palabras en mayúscula. Esto puede ser anulado por el usuario al des-cambiar en el teclado. Lo mejor que puedes hacer es capitalizar las palabras en el código:
NSString *text = [myTextField.text capitalizedString];
Hay una respuesta para Obj-C, estoy aquí para Swift;
textField.autocapitalizationType = UITextAutocapitalizationType.Words
o una forma más corta
textField.autocapitalizationType = .Words
Incluso puedes hacer eso desde el Storyboard o el archivo .xib. Solo tienes que seleccionar el campo de texto y en el inspector de atributos a la derecha hay una sección de Capitalización donde puedes elegir lo que más te convenga. En tu caso, es la capitalización "Palabras".
Lo que queremos hacer es establecer el tipo de autocapitalizationType
del campo de autocapitalizationType
.
C objetivo:
self.textfield.autocapitalizationType = UITextAutocapitalizationTypeWords
Rápido:
self.textfield.autocapitalizationType = .words
Aquí hay algunas opciones:
-
allCharacters
es lo mismo que presionar dos veces la tecla shift, básicamente capslock. -
none
es bastante autoexplicativo, el teclado nunca intentará capitalizar las letras. -
sentences
intentarán poner en mayúscula la siguiente palabra después de una puntuación final. -
words
intentarán capitalizar cada palabra nueva (después de un espacio), que parece ser exactamente lo que está buscando.
Esta propiedad también se puede establecer desde el Inspector de atributos del constructor de interfaz cuando se selecciona el campo de texto apropiado:
"Capitalización" es la primera opción en este grupo, que acaba de pasar seleccionando el tamaño mínimo de fuente para el campo de texto.
Sí. En InterfaceBuilder, en el inspector de atributos textField, puede configurar la propiedad Capitalización en Palabras.
Use textField.autocapitalizationType = UITextAutocapitalizationTypeWords;
Para obtener más información, lea: UITextInputTraits Protocol Reference