【问题标题】:UIScrollView: Keyboard dismiss interactivelyUIScrollView:键盘以交互方式关闭
【发布时间】:2016-05-18 10:07:16
【问题描述】:

在上图中,顶部栏是我使用的自定义视图,就像什么应用程序一样。键盘将与 UIScrollView 交互关闭。我已经实现了UIKeyboardWillHideNotificationUIKeyboardDidChangeFrameNotification 来上下移动该视图。现在的问题是,因为我使用键盘会以交互方式关闭,所以当用户将手指拖到键盘上时,它会相应地开始向上或向下移动。但我也无法收到任何通知来向上或向下移动视图。

【问题讨论】:

  • 使用 UITextField 的委托方法进行键盘显示和隐藏。
  • @Rushi 你说的是哪种委托方法?
  • 你解决了吗?我也有同样的问题
  • No.. :( 我从dismissInteractively改为dismiss
  • @MassimoPolimeni 你解决了吗?

标签: ios swift uiscrollview notifications uikeyboard


【解决方案1】:

在我搜索这个问题时,我发现了三种不同的方法来实现这一点。 最简单的方法是将自定义栏附加为输入附件视图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

【讨论】:

    【解决方案2】:

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

    scrollView.keyboardDismissMode = .Interactive
    

    参见文档UIScrollViewKeyboardDismissModeInteractive

    希望对你有帮助

    【讨论】:

    • 兄弟,我不想这样关闭键盘。我需要一些信息onDrag方法
    • 问题是因为这个. Interactive。我需要解决方案。无论如何感谢您的帮助:)
    猜你喜欢
    • 1970-01-01
    • 2018-09-09
    • 2020-04-18
    • 2016-01-26
    • 2011-07-05
    • 2017-06-25
    • 1970-01-01
    • 2015-06-17
    • 2011-12-16
    相关资源
    最近更新 更多