앱에서 키보드의 높이를 UserDefault에 저장해도 되나요? 아니면 매번 동적으로 얻어야 하나요?

안녕하세요, 초보적인 질문이 하나 있습니다 ㅎㅎ

textField의 inputView로 따로 만든 CustomView를 사용하고 있습니다.
CustomView의 높이를 키보드의 높이와 일치 시키고 싶은데,

제가 아는 한에서는 컴파일 타임에 키보드의 높이를 알 수는 없고, 런타임에서도 무조건 키보드가 한번은 실행되어야 노티피케이션을 통해 높이를 얻을수 있는걸로 알고 있습니다.
(혹시 다른 방법이 있나요? 있으면 알려주시면 감사하겠습니다!)

앱 최초실행때 어떤식으로든 무조건 띄우게 하고 (유저 닉네임이나, 기타 회원가입 폼)
그때 그 높이를 UserDefault에 저장해놨다가 CustomView의 높이로 사용하는 식으로 해도 문제가 없을까요?

  1. 키보드 알림에서 키보드 높이를 알아 오는 것이 맞습니다.

  2. Rx 계열에 RxKeyboard를 사용해본 적이 있었는데 키보드 알림보다 편했습니다. 다만 RxSwift를 익혀야 합니다.

  3. 키보드 다루는 게 어려운 것이 키보드 높이를 알아 오는 게 어려워서가 아니라, 키보드가 나타났을 때 UI가 그것에 맞게 변경되어야 하는 점(키보드 입력 중인 텍스트 필드 스크롤)과 키보드가 사라질 때의 동작을 제어하는 것이 까다롭습니다.

  4. 앱의 UI를 키보드와 관계없이 동작하도록 수정하는 것도 방법입니다.