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. }
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 }