web-dev-qa-db-fra.com

Le type 'NSNotification.Name' n'a pas de membre 'keyboardDidShowNotification'

Je reçois cette erreur avec Swift 4.2

Le type 'NSNotification.Name' n'a pas de membre 'keyboardDidShowNotification'

Voici mon code:

NotificationCenter.default.addObserver(self, selector: #selector(self.keyboardDidShow(notification:)), name: NSNotification.Name.keyboardDidShowNotification, object: nil)

La suite fonctionnait bien avec Swift 4 mais pas avec Swift 4.2

NotificationCenter.default.addObserver(self, selector: #selector(self.keyboardDidShow(notification:)), name: NSNotification.Name.UIKeyboardDidShow, object: nil)

 enter image description here

Document Apple Référence: NSNotification.Name.keyboardDidShowNotification

6
Krunal

Je crois que vous l'utilisez comme ça maintenant.

NotificationCenter.default.addObserver(
    self, 
    selector: #selector(self.keyboardDidShow(notification:)), 
    name: UIResponder.keyboardDidShowNotification, object: nil) //You can use any subclass of UIResponder too

Il est répertorié dans UIResponderdoc en tant que Type Property.

32
Rakesha Shastri

Travailler sur Swift 4,2

 func bindToKeyboard(){
    NotificationCenter.default.addObserver(self, selector: #selector(UIView.keyboardWillChange(_:)), name:
        UIApplication.keyboardWillChangeFrameNotification
        , object: nil)


}
2
Daniel