iOS)  이모지 키보드 높이 대응하기

less than 1 minute read

내용

  • 기본 키보드에서 이모지 키보드로 변경할 때 대응해주기로 했습니다.
  • 키보드의 형태가 바뀔 때 keyboardWillChangeFrameNotification 가 post 됩니다. 그래서 이걸 사용하기로 했습니다.
    • 기본 키보드
    • 이모지 키보드
    • 키보드가 올라오거나 내려갈 때
// ✅ Posted immediately prior to a change in the keyboard’s frame.
NotificationCenter.default.addObserver(self, selector: #selector(updateKeyboardFrame(_:)), name: UIResponder.keyboardWillChangeFrameNotification, object: nil)

@objc
func updateKeyboardFrame(_ notification: Notification) {
    // ✅ 바뀐 키보드의 frame.
    guard let keyboardEndFrame: NSValue = notification.userInfo?[UIResponder.keyboardFrameEndUserInfoKey] as? NSValue else { return }
    // ✅ 바뀌기전 키보드의 frame.
    guard let keyboardBeginFrame: NSValue = notification.userInfo?[UIResponder.keyboardFrameBeginUserInfoKey] as? NSValue else { return }

    // 레이아웃 대응.
}

저는 애니메이션도 적용해서 키보드 높이를 대응해 보았습니다.

Categories:

Updated: