2016-07-19 7 views
0

Ich habe Tab in einer iOS-App, die eine Tabellenansicht zeigt, aber auch eine Tastatur, mit der Sie mehr Inhalt hinzufügen können. Ich möchte eine Möglichkeit, eine Gestenerkennungsfunktion so einzurichten, dass beim Klicken auf eine Leerstelle die Tastatur ausgeblendet wird. Wenn Sie jedoch auf ein Bild oder auf Inhalte klicken, werden diese Aktionen weiterhin zugelassen.Tastatur ablehnen, aber auch andere Aktionen in iOS Swift zulassen?

Wenn ich die Gesten Tippen Erkennung eingerichtet habe, scheint es alle Ereignisse zu übernehmen und obwohl es die Tastatur entlässt, wenn ich auf ein Bild klicke keine dieser Aktionen zu lösen. Irgendwelche Ideen? Ich benutze Swift.

+0

können Sie uns zeigen einige Code auch im tapgesturerecognizer Sie haben, warum es nicht so eingestellt, dann self.view wenn ein Bild gedrückt wird es nicht die Ansicht selbst – Konsy

+0

implementieren 'touchesBegan' in der Sicht des Controllers und rufen Sie' endEditing (true) 'darin auf. Oder verwenden Sie einen Tap Recognizer und in seinem Delegaten können Sie entscheiden, wann er berührt werden soll. – Sulthan

+0

Bitte beziehen Sie sich auf diese URL :: [ablehnen-Tastatur-auf-Berührung-irgendwo-außerhalb-uitextfield] (http://stackoverflow.com/questions/11274119/dismiss-keyboard-on-touch-anywhere-outside-uitxtfield) – Chandan

Antwort

1

Addiert man diese innerhalb viewDidLoad() arbeitete für mich (Swift 3):

let tap = UITapGestureRecognizer(target: self.view, action: #selector(UIView.endEditing(_:))) 
tap.cancelsTouchesInView = false 
self.view.addGestureRecognizer(tap) 
Verwandte Themen