微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

UITapGestureRecognizer 关闭键盘和 UICollectionView 冲突

如何解决UITapGestureRecognizer 关闭键盘和 UICollectionView 冲突

我有一个 UIScrollView,其中包含多个堆栈子视图。

我有一个 UITapGestureRecognizer 可以关闭键盘,这很有效。

let tap = UITapGestureRecognizer(target: self,action: #selector(dismissKbd))
self.view.addGestureRecognizer(tap)

我的一个子视图是一个包含集合视图的堆栈视图。

stackView = UIStackView()
scrollView.addSubview(stackView)
stackView.axis = .horizontal
stackView.anchor(top: notesTextView.bottomAnchor,left: scrollView.leftAnchor,bottom: scrollView.bottomAnchor,right: scrollView.rightAnchor,paddingTop: 8,paddingLeft: 2,paddingBottom: 2,paddingRight: 2,height: 400)
let child = ImagegalleryViewController()
stackView.addArrangedSubview(child.view)
child.didMove(toParent: self)

问题:

结果:

  1. 点击屏幕时键盘关闭
  2. didSelectItemAt 仅在单元格上使用两个手指时有效

我认为这与手势识别器的冲突有关。

如果您能提供有关如何进行这项工作的任何指导,我将不胜感激。我认为这与手势识别器的重点有关?

解决方法

我认为当 scollView 滚动或 offsetY 是一个常数时,您可以处理关闭键盘。你永远不需要用手势关闭键盘。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。