iOS9에서 iPad 키보드의 높이를 계산하는 방법이 미묘하게 변경되었습니다.
흔한 키보드의 높이 취득 방법(불완전)
불완전한 예
@objc private func keyboardDidShow(_ sender: NSNotification) {
if let dic: Dictionary = sender.userInfo {
if let value = dic[UIKeyboardFrameEndUserInfoKey] as? NSValue {
print("height=\(value.cgRectValue.height)")
}
}
}
iOS8 근처까지는 이런 느낌으로
CGRect
위의 것이라면 잘못된 높이가되어 버립니다.키보드의 직사각형과 height 값
rect=(0.0, 713.0, 1024.0, 398.0)
height=398.0
어떻게 봐도 높이 398포인트에는 보이지 않습니다.
어쩌면 보통 크기의 키보드가 화면 밖으로 튀어나오고 있겠지요.
외부 키보드는 시뮬레이터의 경우
height
로 전환됩니다.해결책
화면의 높이에서 CGRect.minY를 뺀 값을 사용하는 것이 좋을 것 같습니다.
수정 예
height = UIScreen.main.bounds.height - value.cgRectValue.minY
끝에
좋지 않은 경우가 있으면 알려주십시오.
최근에는 iPad Pro의 Smart Keyboard의 등장에 의해, 이 근처의 테스트도 필수가 되네요. . .
Reference
이 문제에 관하여(iOS9에서 iPad 키보드의 높이를 계산하는 방법이 미묘하게 변경되었습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/takabosoft/items/51d33ec97970e4232cf0텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)