web-dev-qa-db-fra.com

iOS 8 - Comment masquer la liste des suggestions au-dessus du clavier?

Existe-t-il un moyen de masquer la liste des suggestions au-dessus du clavier? Je n'ai trouvé aucune solution dans la documentation.

48
Khawar

Oui il y a. Vous devez désactiver la correction automatique sur le champ de texte/texte/toute autre classe conforme au protocole UITextInputTraits, qui peut être effectué via la propriété autocorrectionType .

textField.autocorrectionType = .no

De plus, si vous êtes intéressé, les suivants sont les seuls IKeyboardTypes qui n'ont pas de suggestions par défaut.

  • DecimalPad
  • Pavé numérique
  • PhonePad
95
Mick MacCallum

In Swift 2 hide Suggestion utilisant ce code:

textField.autocorrectionType = UITextAutocorrectionType.No

Rapide 3: 0

textfield.autocorrectionType = .no

Pour masquer la barre (barre prédictive), utilisez ce code:

if #available(iOS 9.0, *) {
        var item = textFeild.inputAssistantItem
        item.leadingBarButtonGroups = [];
        item.trailingBarButtonGroups = [];
    }

Pour désactiver la copie passée, utilisez cette fonction

override func selectionRectsForRange(range: UITextRange) -> [AnyObject] {
    return []
}

override func canPerformAction(action: Selector, withSender sender: AnyObject?) -> Bool {
    let menu = UIMenuController.sharedMenuController()
    menu.menuVisible = false
    return false
}

Swift 3

override func selectionRects(for range: UITextRange) -> [Any] {
    return []
}

override func canPerformAction(_ action: Selector, withSender sender: Any?) -> Bool {
    let menu = UIMenuController.shared
    menu.isMenuVisible = false
    return false


}
6
Kiran P Nair

Dans les versions plus récentes des storyboards Xcode, vous pouvez également définir les traits du clavier dans le storyboard (panneau de droite, inspecteur d'attributs, puis recherchez Traits de saisie de texte et sélectionnez les traits souhaités, au moins dans Xcode 9). En particulier, sélectionnez "Non" pour le trait Correction, comme indiqué dans l'exemple ci-dessous. Fait intéressant, il s'agit du type de contenu Nom d'utilisateur, et la sélection par défaut pour le trait Correction consistait à activer la correction, contrairement à un type de contenu comme le mot de passe, par exemple. Example of setting this in the storyboard

3
auspicious99

Pour toute personne ayant atterri ici qui tente de désactiver/masquer la barre de remplissage automatique du mot de passe iOS 11, voici une solution .

2
Aaron