2017-07-20 3 views
0

Ich habe ein Problem und ich kann die Lösung dafür nicht finden. Im Moment habe ich eine TAP-Gesten-Erkennung in der VC-AnsichtDidLoad(), die die Tastatur schließt, wenn ein Tap auf dem Bildschirm ist. Problem ist, dass, wenn der Benutzer die Textfelder ausgefüllt hat und er die "Konto registrieren" Taste drückt, wird es immer noch als ein Tippen erkannt und entfernt nur die Tastatur, aber die Taste reagiert nicht auf das Tippen und die Auswahlfunktion wird nicht aufgerufen. Ich möchte, sobald die Taste mit der Tastatur auf dem Bildschirm angetippt wurde, um die Funktion aufzurufen und ihre Geschäfte zu machen. Bitte helfen Sie. einfach die erste Zeile der durch die Taste für diese Frage, weil aufgerufene Funktion Entsendung ist, soweit ich bekommen haben:Wie löst man die Tastenaktion aus, wenn die Tastatur noch schnell auf dem Bildschirm angezeigt wird?

@objc fileprivate func createAccount() { 
    confirmPasswordTextField.resignFirstResponder() 
+0

Möchten Sie nur die Schaltfläche "Konto registrieren" aktivieren? Oder ist es in Ordnung, wenn alle anderen Tasten auch abgreifbar sind? – Pochi

+0

Nun, es gibt nur einen Knopf, das Register eins. beide Optionen wären aber nett. –

Antwort

0

Wenn Sie wollen einfach nur alle Tasten (zusammen mit der Tastatur entlasse) umsetzbare machen alles, was Sie zu tun haben, ist Ihr Leitungs Gestenerkenner nicht abbrechen berührt in Aussicht stellen:

var cancelsTouchesInView: Bool { get set } 

So einfach eingestellt:

myTapGesture.cancelsTouchesInView = false 

https://developer.apple.com/documentation/uikit/uigesturerecognizer/1624218-cancelstouchesinview

Dies wird es so machen, dass, wenn der Benutzer auf die Schaltfläche "Account registrieren" klickt, die Tastatur geschlossen wird und die Aktion ebenfalls ausgeführt wird.

+0

Ich habe es in meiner ViewDidLoad() und es tut es nicht. let disappledTap: UITapGestureRecognizer = UITapGestureRecognizer (Ziel: self, action: #selector (keyboardHide)) displaceTap.cancelsTouchesInView = false // Interferenz nicht unterbrechen und andere Interaktionen abbrechen. view.addGestureRecognizer (ablehnenTap) –

Verwandte Themen