iOS 中键盘和 UIView 之间出现空白

2024-06-28

我有一个基于标签栏控制器的应用程序,我正在使用IQKeyboardManager处理类似表单的东西。

第 1 步:带有底部 a 的选项卡栏控制器UITextView里面一个UIView。检查图像 1。

第2步:当我点击UITextView,出现键盘,但由于选项卡栏而出现空白。我已尝试删除IQKeyboardManager但还是出现了,所以确认不是这个问题IQKeyboardManager。这是由于标签栏控制器造成的问题。

如何消除该间距?


你是对的。空白是由标签栏造成的。通过添加额外空间覆盖视图中的 y 位置当您收到键盘时应该出现而不是在您的 viewDidLoad 或其他任何地方,因为它将隐藏在选项卡栏后面。然后,您需要在用户使用完键盘后删除该附加值,将其设置回正常状态。例如。

// Declaration
var tabBarHeight : CGFloat = 0.0
// viewDidLoad
tabBarHeight = tabBarController?.tabBar.frame.size.height
// When the user begins using the keyboard move the view containing the textfield
yourView.frame.origin.y = (tabBarController?.tabBar.frame.origin.y + tabBarHeight )
// When the user finishes using the keyboard
yourView.frame.origin.y = (tabBarController?.tabBar.frame.origin.y - tabBarHeight )

如果您有限制,则需要对其进行调整。好的答案在这里:

https://stackoverflow.com/a/27870216/4008175 https://stackoverflow.com/a/27870216/4008175

此答案将帮助您聆听键盘何时被激活和停用:

https://stackoverflow.com/a/27087733/4008175 https://stackoverflow.com/a/27087733/4008175

祝你好运!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

iOS 中键盘和 UIView 之间出现空白 的相关文章

随机推荐