[iOS] Your guide to keyboard layout

Youngwoo Lee·2021년 12월 24일
0

iOS

목록 보기
39/46
post-thumbnail

들어가기 앞서

이제껏 textField 혹은 textView를 통해서 text를 입력받을 때, keyboard frame에 UI 요소가 가려지지 않도록 NotificationCenter 를 통해서 Observing 하고, 그에 반응해서 frame에 반응했는데 다른 방법이 있다고 해서 정리해볼까 합니다.

참고)
WWDC 2021 - Your guide to keyboard layout

Your guide to Keyboard layout

해당 세션은 총 3개! "Layout guide", "Integrating the keyboard", "Types of keyboards"로 구성되어 있다. 오늘은 앞에서 말했듯이 keyboard에 대응할 수 있는 keyboardLayoutGuide를 소개하는 Layout guide에 대해서 정리해보지!

Managing the Keyboard

일단 이전에 사용했던 방식인 notification에 대해서 알아보자!

  • Register for notifications
  • Get applicable frames and animation info from notification
  • Do math (sometimes)

먼저 Notificiation을 등록을 한 후에,
infoKey를 통해서 keyboard frame을 알아와서 animation에 적용하는 것이다.
코드로 보자면 아래와 같다.

딱 봐도 정말 귀찮은 작업이다... 직접 NotificationCenter에 addObserve도 해줘야 하며, deinit 혹은 ViewController가 내려가기 전에 removeObserver도 해줘야 하니 여간 귀찮은 것이 아니다.

keyboardLayoutGuide

iOS 15+, 앱의 레이아웃에서 키보드의 위치를 추적하는 Layout guide이다.

WWDC 영상을 보면, 위의 코드가 아래처럼 한 줄로 끝나는 것을 알 수 있다... 진작 만들지...

이후 내용들은 추후에 정리하도록 하자!!

profile
iOS Developer Student

0개의 댓글