Comment cacher la barre d'outils dans IQKeyboardManager iOS Swift 3

J'utilise la bibliothèque IQKeyboardManger pour faire défiler les champs de text lorsque j'ai commencé à taper en utilisant le keyboard, mais je ne veux pas afficher la barre d'outils par défaut de leur bibliothèque. Voici le code que j'ai utilisé.

override func viewDidLoad() { super.viewDidLoad() self.chatTextField.inputAccessoryView = [[UIView alloc] init]; //This will remove toolbar which have done button. self.chatTextField.keyboardDistanceFromTextField = 8; //This will modify default distance between textField and keyboard. For exact value, please manually check how far your textField from the bottom of the page. Mine was 8pt. } 

entrez la description de l'image ici

Vous pouvez définir IQKeyboardManager sous les propriétés.

Je suppose que vous avez activé le IQKeyboardManager dans didFinishLaunch du délégué de l'application comme ceci

  IQKeyboardManager.sharedManager().enable = true 

shouldShowTextFieldPlaceholder à false ==> Si vous souhaitez masquer la section de la barre d'outils de l'espace réservé

shouldHidePreviousNext à false ==> Si vous voulez masquer le button suivant et précédent et ainsi de suite.

Vous pouvez activer les parameters dans didFinishLaunch of AppDelegate comme ceci

 func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { // Override point for customization after application launch. IQKeyboardManager.sharedManager().enable = true IQKeyboardManager.sharedManager().enableAutoToolbar = false IQKeyboardManager.sharedManager().shouldShowTextFieldPlaceholder = false IQKeyboardManager.sharedManager().shouldHidePreviousNext = false return true } 

Vous pouvez activer ou désactiver la barre d'outils dans didFinishLaunchingWithOptions de AppDelegate :

 IQKeyboardManager.sharedManager().enable = true IQKeyboardManager.sharedManager.enableAutoToolbar = false 

Pour plus d'informations, voir properties et fonctions utilisation

Swift 3 Vous devez utiliser shouldResignOnTouchOutside pour démissionner textField si vous le UITextField dehors de UITextField / UITextView .

Ajoutez ceci dans votre ViewController si vous le voulez dans un ViewController spécifique ou pour surcharger toute votre application dans le file AppDelegate .

À l'intérieur de la méthode:

 func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { IQKeyboardManager.sharedManager().enable = true IQKeyboardManager.sharedManager().enableAutoToolbar = false IQKeyboardManager.sharedManager().shouldShowToolbarPlaceholder = false IQKeyboardManager.sharedManager().shouldResignOnTouchOutside = true }