

iOS10.11で、キーボードが表示・非表示の状態を取得したい。

キーボードが表示されている場合と、非表示の場合で処理を処理を分けたいです。


CC BY-SA 3.0
2018-04-13T08:44:25.200
43207
2022-04-20T07:03:55.383
28144
question
swift ios
iOS キーボードが表示・非表示の状態を取得したい。

[code]

    // 変数用意しておく
    var isShown = false
    
    // viewDidLoadなどで監視を設定
    NotificationCenter.default.addObserver(self, selector: #selector(keyboardDidAppear), name: UIResponder.keyboardDidShowNotification, object: nil)
    NotificationCenter.default.addObserver(self, selector: #selector(keyboardDidDisappear), name: UIResponder.keyboardDidHideNotification, object: nil)
    
    フラグを切り替える
    @objc func keyboardDidAppear() {
        isShown = true
    }
    @objc func keyboardDidDisappear() {
        isShown = false
    }
    
    if isShown {
        // キーボードが表示されている時
    } else {
        // 隠れている時
    }
    
[/code]


CC BY-SA 4.0
2020-09-08T19:20:06.627
70238
2020-09-08T19:20:06.627
41824
43207
answer