ios - 设备旋转时更改自定义 inputView 的高度

标签 ios uitextfield uikeyboard inputview

我制作了一个自定义键盘 View 并将其链接到 UITextField 的 inputView 属性。 有没有办法在方向改变时改变自定义 inputView 的高度,并让框架像系统键盘一样平滑地改变动画? 我的键盘尺寸是 768x272,当设备横屏时,尺寸变成 1024x272,但我想把它变大,比如 1024x372。如果我在获取 UIDeviceOrientationDidChangeNotification 时使用以下代码更改框架,则更改动画不流畅。

textField.inputView.frame = CGRectMake(0,0,1024,372);

最佳答案

根据 Apple documentation对于 UIResponder.inputView: “如果 UIKit 在其自动调整掩码中遇到具有 UIViewAutoresizingFlexibleHeight 值的输入 View ,它会更改高度以匹配键盘。”

因此,如果您想要自定义高度,则不应指定 UIVieAutoresizingFlexibleHeight 掩码。

关于ios - 设备旋转时更改自定义 inputView 的高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11465108/

相关文章:

ios - Objective C 子类 UITextField 只复制

ios - 两个文本字段显示相同的 GMSPlace 自动完成

ios - 如何使用 IBAction 清除 UITextField 中的文本?

ios - 使用 AutoLayout 出现键盘时移动 UIView

iOS 用 UIPickerView 替换键盘然后返回键盘

ios - 从 CMSampleBufferRef 获取 YUV 用于视频流

ios - 在 Swift 中增加月份和年份的值

ios - 如何在 Swift 中执行 GET 和 POST 请求?

ios - 是否可以在 draw(_ rect : CGRect) function in a UIView subclass that is backed by a CATiledLayer? 中在矩形边界外画一条线

android - 在 iOS 中管理键盘打开和隐藏时的屏幕显示和底部按钮与 Android 相同