Después de actualizar a iOS 13, la sugerencia (correo electrónico, número de teléfono, nombre ...) para UITextField no aparece sobre el teclado

11

Después de actualizar el dispositivo a iOS 13, sugerencia de entrada para inputField (UITextField). Al igual que el correo electrónico, el número de teléfono, el nombre y el apellido, ya no aparecen sobre el teclado. La primera imagen de iOS 12.4.1 tiene correo electrónico sugerido, la segunda imagen de iOS 13.1.2 no tiene ninguna sugerencia. La misma aplicación de demostración se compila con xCode Versión 11.0 (11A419c) en iPhone 7 iOS 12.4.1 (primera imagen, funciona como se esperaba). iPhone 7 iOS 13.1.2 (segunda imagen, no tengo ninguna sugerencia sobre el teclado) Lo probé agregando textContentType en storyboard y también agregando la siguiente línea en el código directamente

email.textContentType = .emailAddress

En iOS 12.4.1, funciona como se esperaba

y

iOS 13.1.2 no muestra sugerencia

Stefan Simic
fuente
¿Versión de Xcode?
Lal Krishna el

Respuestas:

11

Entonces, para iOS 13 (o superior), noté que establecer las siguientes propiedades hace que iPhone sugiera todos los datos:

Para el correo electrónico, asegúrese de que todas estas tres propiedades estén configuradas:

 emailField.autocorrectionType = .yes
 emailField.textContentType = .emailAddress
 emailField.keyboardType = .emailAddress

Para nombre y apellido:

firstNameField.autocorrectionType = .yes
firstNameField.textContentType = .givenName
firstNameField.keyboardType = .namePhonePad

lastNameField.autocorrectionType = .yes
lastNameField.textContentType = .familyName
lastNameField.keyboardType = .namePhonePad

Para el número de teléfono es un poco complicado:

phoneField.autocorrectionType = .yes
phoneField.textContentType = .telephoneNumber
phoneField.keyboardType = .numbersAndPunctuation

También asegúrese de que la Configuración predictiva en teclados del dispositivo esté activada . Si no funciona a la vez, apáguelo, espere unos segundos y luego vuelva a encenderlo y auge, volvería a funcionar.

¡Espero eso ayude!

Sudhanshu Vohra
fuente
Para nombres y números de teléfono, puede configurar "keyboardType" en ".namePhonePad"
Neil