我应该在关闭视图之前关闭键盘吗?

Should I dismiss keyboard before dismissing the view?

我有两个 UIViewControllers,以模态方式呈现在另一个之上。第一个控制器是横向的,模态视图是纵向的。

关闭模态视图时,视图会动画显示下面的横向视图。如果此时键盘在模态视图中可见,它会突然附加到屏幕的左侧或右侧以匹配即将激活的方向 viewController。

有没有办法让键盘消失的方向和消失的方向一致viewController?或者我是否应该在 关闭模态视图控制器之前 关闭键盘?在那种情况下,最好的方法是什么?

当用户点击 'close' 时,我确实有一个动作。我可以在那里检查是否有任何对象是 firstResponder,并在关闭之前启动约 0.4 秒的计时器。但它显然会产生一种感觉不那么自然的延迟。我更喜欢一种让键盘保持与关闭视图相同的方向。

这正在发生:

我认为最好的做法是在关闭模式之前关闭键盘 ViewController。键盘显示在您的内容之上,应先将其移除,然后再移除视图层次结构中的其他项目。