gpt4 book ai didi

iOS 8 获取键盘高度

转载 作者:IT王子 更新时间:2023-10-29 07:49:57 24 4
gpt4 key购买 nike

我无法可靠地获取键盘的实际高度。我正在添加一个自定义工具栏,该工具栏将直接放置在键盘上方。为了使用布局约束来做到这一点,我在屏幕底部和工具栏底部之间添加了一个静态空间约束。当显示键盘时,我将此约束修改为键盘的高度,这在 iOS 8 中变化很大。

要调整间隔器的大小,我目前使用以下在 UIKeyboardDidShowNotification 上触发的方法

-(void)keyboardDidShow:(NSNotification*)notification
{
CGFloat height = [[notification.userInfo objectForKey:UIKeyboardFrameBeginUserInfoKey] CGRectValue].height;

self.shimConstraint.constant = height;
[self.view layoutIfNeeded];
}

这有时会正确地调整约束的大小,但返回的键盘高度通常是完全不正确的。显示键盘后可靠地获取键盘高度的最佳方法是什么?

编辑:该应用程序允许用户在多个不同的输入字段之间切换。其中一些已禁用自动更正功能,因此自动更正栏可能会隐藏也可能不会隐藏,并且在切换字段时会返回不正确的高度。

最佳答案

您的操作方式是正确的,但您可能希望使用 UIKeyboardFrameEndUserInfoKey 而不是 UIKeyboardFrameBeginUserInfoKey。最终用户键是键盘在屏幕上完成动画后的框架,因此您知道它将是那个框架,而开始键可能并不总是与键盘框架显示时的键盘框架相匹配。

可能还需要额外考虑设备的方向,我没有研究过,但对于纵向,它应该可行。

关于iOS 8 获取键盘高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26110878/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com