Keyboard iOS 8 Menolak penundaan setelah pengontrol tampilan modal ditutup

Di iOS 8+ saya perhatikan bahwa jika Anda memiliki bidang teks yang saat ini merupakan firstResponder di pengontrol tampilan yang disajikan, ketika pengontrol tampilan ditutup, keyboard akan berhenti selama sekitar 1 detik sebelum ditutup.

Hal ini terjadi untuk iOS 8.0 dan 8.1 dan bukan 7.1.

Adakah ide mengapa ini terjadi?


person micap    schedule 04.12.2014    source sumber


Jawaban (2)


Berdasarkan hal ini, di iOS 8 tampaknya tampilan tidak melepaskan status responden pertama hingga benar-benar berada di luar layar.

http://prod.lists.apple.com/archives/cocoa-dev/2014/Sep/msg00391.html

Solusi kami adalah menelepon [self.view endEditing:YES] di -viewWillDisappear.

person micap    schedule 22.12.2014
comment
Ketika saya mencoba ini, keyboard mulai ditutup, tetapi kemudian melompat kembali tepat sebelum pengontrol tampilan ditutup karena alasan tertentu... - person ryanthon; 26.12.2014
comment
Masih terjadi di iOS 9 - view.endEditing(true) - person DogCoffee; 04.12.2015

Untuk Swift 3/4

override func viewWillDisappear(_ animated: Bool) {
    self.view.endEditing(true)
}

Juga jika tidak mengundurkan diri, coba panggil resignFirstResponder pada kolom teks yang ingin Anda akhiri pengetikannya.

override func viewWillDisappear(_ animated: Bool) {
    textField.resignFirstResponder()
}
person ricks    schedule 30.03.2018
comment
Jangan lupa menelepon super.viewWillDisappear(animated). - person Tim Vermeulen; 03.05.2018
comment
@TimVermeulen Ya! Komentar yang bagus. Jika Ricks menambahkan ini ke jawabannya, itu akan mendapat suara positif dari saya. - person mskolnick; 28.02.2020