Swift 3 での NotificationCenter の書き方、キーボードの表示を検知したい


Swift 2系の情報が多く 3 の情報が少なかったのでメモ
ViewContoroller に以下のように記述


override func viewDidLoad() {
    super.viewDidLoad()
    let nofitiShow = Notification.Name.UIKeyboardWillShow
    let nofitiHide = Notification.Name.UIKeyboardWillHide

    // Notification の追加       
    NotificationCenter.default.addObserver(
        self,
        selector: #selector(self.keyboardWillShow(notification:)),
        name: nofitiShow,
        object: nil
    )
    NotificationCenter.default.addObserver(
        self,
        selector: #selector(self.keyboardWillHide(notification:)),
        name: nofitiHide,
        object: nil
    )
}

// キーボード出現時
func keyboardWillShow(notification: NSNotification) {
    print("open")
}

// キーボード閉じる時
func keyboardWillHide(notification: NSNotification) {
    print("close")
}

これでテキストフィールドがキーボードで隠れてしまう時の処理が書ける!