UIScrollView:键盘以交互方式解除

时间:2016-05-18 10:07:16

标签: ios swift uiscrollview notifications uikeyboard

enter image description here

在上图中,顶部栏是一个自定义视图,我使用的是什么应用程序应用程序。键盘将使用UIScrollView以交互方式解除。我已实施UIKeyboardWillHideNotificationUIKeyboardDidChangeFrameNotification来上下移动该视图。现在的问题是因为我使用的键盘将以交互方式解除,因此当用户将手指拖动到键盘时,它会相应地向上或向下移动。但是我也无法获得任何通知来上下移动视图。

2 个答案:

答案 0 :(得分:0)

在搜索此问题时,我发现了三种实现此问题的方法。 最简单的方法是将该定制栏附加为输入附件视图https://developer.apple.com/documentation/uikit/uiresponder/1621119-inputaccessoryview

您还可以将虚拟视图附加为输入附件视图,以发出有关其当前位置的信息,如此处所述:https://github.com/brynbodayle/BABFrameObservingInputAccessoryView

其他,最不利的是隐藏键盘而不显示任何动画,而是显示捕获的键盘静态图像动画,如此处所述:https://medium.com/@superpeteblaze/ios-custom-keyboard-dismissal-with-swift-9b6df2d9cc49

答案 1 :(得分:-5)

键盘跟随屏幕拖动触摸,可以再次向上拉以取消关闭。

scrollView.keyboardDismissMode = .Interactive

请参阅文档UIScrollViewKeyboardDismissModeInteractive

希望它有用