Після оновлення до iOS 13 пропозиція (електронна пошта, номер телефону, ім’я…) для UITextField не відображається над клавіатурою


11

Після оновлення пристрою до iOS 13 пропозиція вводу для inputField (UITextField). Як і електронна пошта, номер телефону, ім’я, прізвище, більше не відображаються над клавіатурою. Перше зображення iOS 12.4.1 пропонує електронну пошту, друге зображення iOS 13.1.2 не має жодних пропозицій. Цей же демонстраційний додаток створено з xCode версії 11.0 (11A419c) на iPhone 7 iOS 12.4.1 (перше зображення, робота як очікувалося). iPhone 7 iOS 13.1.2 (друге зображення, не маю жодної пропозиції над клавіатурою). Я перевірив, додавши textContentType у таблицю розкадрувань, а також додавши безпосередньо наступний рядок у коді

email.textContentType = .emailAddress

На iOS 12.4.1 завжди працювати, як очікувалося

і

iOS 13.1.2 не показує пропозицію


Версія Xcode?
Лал Крішна

Відповіді:


11

Тому для iOS 13 (або новішої версії) я помітив, що встановлення наступних властивостей змушує iPhone запропонувати вам усі дані:

Для електронної пошти переконайтеся, що всі ці три властивості встановлені:

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

Ім'я та прізвище:

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

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

Що стосується номера телефону, це трохи складно:

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

Також переконайтеся , що Predictive в клавішних Налаштування пристрою є включений . Якщо це не працює одразу, вимкніть його, зачекайте кілька секунд, а потім увімкніть знову, і він знову запрацює .

Сподіваюся, це допомагає!


Для імен та номерів телефонів ви можете встановити "typeType" на ".namePhonePad"
Neil
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.