Comment renvoyeriez-vous le clavier de l'Uitextfield lors de la prise en dehors du clavier. J'ai essayé Merci pour votre temps et votre patience. P> résigneurstreesponder () code> et il ne quitte que après avoir tapé un chiffre. J'ai également essayé
textfield.inputview = uiview.frame (cadre: CGRectZero) code>. J'ai vu de nombreux verisons Obj-C de ce que je demande, mais j'ai besoin de l'équivalent rapide parce que je n'ai aucune expérience de programmation dans l'objectif-C p>
5 Réponses :
Le meilleur moyen d'ajouter un reconnaissance de geste de robinet à la vue et d'appeler soit RésignFirStreresponder () ou Self.View.entrediting (True). Je préfère la mise en scène () puisque la résigneur doit être effectuée pour chaque champ de texte séparément, contrairement à la fin, qui est effectuée pour la vue elle-même.
Dans la vue ViewDiDload, écrivez le code ci-dessous: P>
let tapRecognizer = UITapGestureRecognizer() tapRecognizer.addTarget(self, action: #selector(ViewController.didTapView)) self.view.addGestureRecognizer(tapRecognizer)
Où dois-je mettre la fonction DidTapView
Ajoutez simplement la fonction de fonctionnement à l'intérieur de la même classe de contrôleur que vous avez.
SWIFT 3 m'a obligé d'ajouter dans un sélecteur, comme suit TaprecognIzer.addtarget (Self, Action: #Selector (MyViewController.DidTapView)) Code>
Ajout de la syntaxe Swift 3 aussi. Merci@christyherron
Si vous ne voulez pas définir une méthode supplémentaire, il existe une manière légèrement plus simple qui fonctionnera également
Utilisation de cela, je reçois l'erreur, L'utilisation du littéral de chaîne pour l'objectif-C Seletors est obsolète; Utilisez '#Selector' à la place code>. Je posterai si je trouve la solution.
Enddition: sélecteur non reconnu envoyé à l'instance
Vous pouvez également utiliser cette méthode pour rejeter le clavier lorsque vous appuyez sur 'RETURN'
func textFieldShouldReturn(textField: UITextField!) -> Bool { self.view.endEditing(true); return false; }
Profitez strong> p>
J'ai trouvé ce code sur un site et ça marche génial pour moi! Appelez simplement cette fonction dans une action de bouton ou similaire: P> dismissMyKeyboard()
Textfield.Resignfiresponder () devrait fonctionner correctement. Voici un exemple d'exemple téléchargé Dropbox.com/s/e0vm89GD6UEGPN0/TextField. Zip? DL = 0
Vérifiez également votre code de mines sur le périphérique actuel.