¿Es posible cambiar programáticamente el tipo de teclado de uitextfield para que sea posible algo como esto:
if(user is prompted for numeric input only)
[textField setKeyboardType: @"Number Pad"];
if(user is prompted for alphanumeric input)
[textField setKeyboardType: @"Default"];
iphone
ios
uitextfield
uikeyboard
eric.mitchell
fuente
fuente
doozy
a algo que es más comúnmente comprensible .. tener en cuenta para es un sitio internacional y no un norteamericano unoRespuestas:
Hay una
keyboardType
propiedad paraUITextField
:Tu código debería leer
fuente
UITextInputTraits
protocolo, queUITextField
adopta.Vale la pena señalar que si desea que un campo enfocado actualmente actualice el tipo de teclado de inmediato, hay un paso adicional:
Sin la llamada a
reloadInputViews
, el teclado no cambiará hasta que el campo seleccionado (el primer respondedor ) pierda y recupere el enfoque.Puede encontrar una lista completa de los
UIKeyboardType
valores aquí , o:fuente
[textField reloadInputViews];
que me faltaba. ¡Gracias!reloadInputViews
también funcionan paraUITextInput
implementaciones a medida .Sí, puedes, por ejemplo:
fuente
Esto es para rápido. Además, para que esto funcione correctamente, debe configurarse después de
textFieldView.delegate = self
fuente
para hacer que el campo de texto acepte alfanumérico solo establezca esta propiedad
fuente
fuente
Swift 4
Si está intentando cambiar su tipo de teclado cuando se cumple una condición, siga esto. Por ejemplo: si queremos cambiar el tipo de teclado de Predeterminado a Teclado numérico cuando el recuento del campo de texto es 4 o 5, haga esto:
fuente
Hay una propiedad para esto llamada
keyboardType
. Lo que querrás hacer es reemplazar donde tienes cadenas@"Number Pad
y@"Default
conUIKeyboardTypeNumberPad
yUIKeyboardTypeDefault
.Su nuevo código debería verse así:
¡Buena suerte!
fuente
para las personas que desean usar
UIDatePicker
como entrada:fuente
Este es el
UIKeyboardTypes
para Swift 3:Este es un ejemplo para usar un tipo de teclado de la lista:
fuente
Cambie programáticamente el tipo de teclado UITextField swift 3.0
fuente
Estos son los tipos de teclado en Swift 4.2
fuente