触摸手势在 Scrollview(Xcode、Swift)中不起作用

Posted

技术标签:

【中文标题】触摸手势在 Scrollview(Xcode、Swift)中不起作用【英文标题】:Touch gestures doesn't work in Scrollview (Xcode, Swift) 【发布时间】:2019-02-14 10:37:49 【问题描述】:

我尝试在滚动视图中使用按钮。 但它们不是“可触摸的”。

我没有滚动视图的应用程序正在运行。

我检查了是否启用了用户输入,但确实如此。

希望有人能给我建议。

问候

【问题讨论】:

你为此写过代码吗? 你能分享你的项目吗? 你在使用自动布局吗? 是的,但不多,我只是做了布局。目前只有登录到滚动视图正在工作。我不使用自动布局,我按照描述做了约束。并且 Scrollview 本身正在工作,但里面的所有东西都是不可触摸的。最好的分享方式是什么? 如果您使用scrollView.addSubview(yourViewIncludingButton)在子视图中添加按钮,它应该是可触摸的。 【参考方案1】:

设置UIScrollView的以下属性以启用UIButton的触摸事件

scrollView.isUserInteractionEnabled = true
scrollView.isExclusiveTouch = true
scrollView.canCancelContentTouches = true
scrollView.delaysContentTouches = true

【讨论】:

对不起,我是 Xcode 的新手,我来自 android Studio。我想你发现我的问题这听起来不错。但是我可以在哪里更改不在对象检查器/属性检查器中的属性(右)?启用了用户交互,但我没有找到其他属性。 嗨@netflixAndChil,这些属性只有您可以通过编程方式分配,IBOutlet UIscrollview 然后分配这些属性。

以上是关于触摸手势在 Scrollview(Xcode、Swift)中不起作用的主要内容,如果未能解决你的问题,请参考以下文章

带有点击和拖动手势的 SwiftUI ScrollView

当ViewPager嵌套在ScrollView/ListView里时,手势冲突如何处理?

当scrollView正在减速时,触摸检测很慢

使 UIControl 仅接受滑动手势并传递触摸/点击手势

UIScrollView 并检测其子视图的手势

如何在 Swift UIKit Map 组件中处理 SwiftUI 中的触摸手势?