gpt4 book ai didi

iphone - 通过第一响应者更改保持 iPhone 键盘对齐的工具栏可见?

转载 作者:搜寻专家 更新时间:2023-10-30 19:57:27 25 4
gpt4 key购买 nike

我正在使用 Josh 在 this question 中描述的方法将工具栏添加到 iPhone 键盘的顶部。基本上,这个想法是:

  • 在其初始化方法中将 View Controller 添加为通知 UIKeyboardWillShowNotificationUIKeyboardWillHideNotification 的观察者
  • 每当发布这些通知时,将工具栏与键盘一起设置为打开/关闭屏幕的动画

我在屏幕上也有多个uitextfields,在编辑完成时,所有这些都成为第一响应者,并在编辑完成后辞职(用户点击其他文本字段,关闭任何文本字段,或者按下“完成”的文本字段,或者按下“完成”字段“完成”。在键盘上 - 我将 textFieldShouldReturn: 覆盖为 resignFirstResponder)。

不过,我遇到了一个问题,因为每次在文本字段之间切换时都会发布通知。例如,如果用户正在编辑文本字段 A,然后完成编辑并点击文本字段 B,则 A 退出第一响应者,B 成为第一响应者。但是,这也会向我的 View Controller 发布“将显示”和“将隐藏”通知。

所有这一切的最终结果是,虽然工具栏随着第一个文本字段的键盘出现,并随着最后一个文本字段的键盘消失,但每次用户时它似乎都滑入和滑出键盘在文本字段之间切换。

如果键盘实际上要显示或隐藏,有没有办法只响应“will {show,hide}”通知?换句话说,如何忽略不会导致键盘可见状态发生变化的通知?

最佳答案

您需要制作一个 BOOL ivar 来跟踪键盘是否已经可见,因此您将充分利用所有 UITextField 委托(delegate)方法:) 具有多个文本字段的工具栏可能很棘手,但您非常接近!

关于iphone - 通过第一响应者更改保持 iPhone 键盘对齐的工具栏可见?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1107546/

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