我一直在使用键盘通知,没有任何问题,并获得了键盘的确切高度.

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

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

但在iOS 11中,调用通知时键盘大小为0.

此场景中出现的问题是什么?我使用的是Xcode9 Beta 5

推荐答案

使用以下命令:

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

对于Swift,您可以使用:

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

Ios相关问答推荐

如何从ipad获取用户定义的设备名称,IOS版本应大于16在flutter

使用CGAffineTransform旋转视图只起作用一次吗?

在iOS 17脉冲符号效果不起作用的情况下制作UIBarButtonItem动画(没有UIImageView)

Swift导航远离视频导致崩溃

由于已存在同名项目,因此无法将Mapbox.xcframework-ios.sign复制到Signature中

iOS应用程序冻结在UICollectionView代码,但我没有';没有任何UICollectionViews

拖动手势导致 sim 崩溃 Swift UI

SwiftUI - 搜索栏和导航标题之间的空间太大

Flutter iOS 键盘问题:. TextInputType.number 中缺少字符

SwiftUI 故障/错误 - 在 LazyVStack 和 ScrollView 中使用 AVPlayer 时状态栏不显示

动画文本位置

如何在 SwiftUI 中同时使用 LongPressGesture 和 ScrollView 中的滚动?

在我的 M1 上出现 Architecture arm64 问题,因此我无法运行我的旧项目

弹出视图后使所有背景 UI 模糊

Xcode 13.4.1 (13F100)Command CodeSign 失败,退出代码非零我应该删除哪个证书?

为信用卡输入格式化 UITextField,例如 (xxxx xxxx xxxx xxxx)

如何在 iphone 屏幕中间显示活动指示器?

如何找到 UILabel 的实际行数?

请在您的 Podfile 中为此目标指定一个平台?

如何在 Swift 中更改按钮标题对齐方式?