1. ホーム
  2. ios

[解決済み] iOS 11 - キーボードの通知でキーボードの高さが0になる。

2023-05-29 05:43:57

質問

キーボードの通知は問題なく使用できており、キーボードの高さも正確に取得できています。

- (void)keyboardDidShow:(NSNotification *) notification{
    CGSize keyboardSize = [[[notification userInfo] objectForKey:UIKeyboardFrameBeginUserInfoKey] CGRectValue].size;

    NSLog(@"%f",keyboardSize.height);}

が、iOS11では通知を呼び出すとキーボードのサイズが0になります。

このシナリオで発生している問題は何でしょうか?私は xcode 9 Beta 5 を使用しています。

どのように解決するのですか?

これを使います。

CGSize keyboardSize = [[[notification userInfo] objectForKey:UIKeyboardFrameEndUserInfoKey] CGRectValue].size;

Swiftの場合は

let keyboardSize = (notification.userInfo![UIKeyboardFrameEndUserInfoKey] as! NSValue).cgRectValue.size