【Swift】キーボードの表示/非表示を検知する方法!UIResponder

この記事からわかること
- Swiftでキーボードが表示/非表示になったことを検知する方法
- UIResponderのkeyboardWillShowNotification/keyboardWillHideNotificationの使い方
- キーボードのサイズ(横幅や高さ)を取得する方法
\ アプリをリリースしました /
環境
- Xcode:16.0
- iOS:18.0
- Swift:5.9
- macOS:Sonoma 14.6.1
キーボードの表示/非表示を検知する方法
公式リファレンス:UIResponder.keyboardWillShowNotification
Swiftでキーボードが表示されたかどうかを検知するにはNotificationCenter
クラスを使用してUIResponder
のkeyboardWillShowNotification
/keyboardWillHideNotification
を観測対象にします。
keyboardWillShowNotification
ではキーボードが表示されたことをkeyboardWillHideNotification
ではキーボードが非表示になったことを検知することができます。
Swift UIで使用できる管理クラスを実装してみました。
表示されたキーボードの高さを取得する
表示されたキーボードのサイズ(横幅や高さ)や座標などを取得したい場合は発行されたNSNotification
のuserInfo
プロパティにある辞書型の中からUIResponder.keyboardFrameEndUserInfoKey
キーで取得することが可能です。
まだまだ勉強中ですので間違っている点や至らぬ点がありましたら教えていただけると助かります。
ご覧いただきありがとうございました。