【问题标题】:Tap passes through UISlider点击穿过 UISlider
【发布时间】:2015-04-19 21:17:07
【问题描述】:

我的 UISlider 是具有 UITapGestureRecognizer 的 UIView 的子视图。如果滑块被点击或只移动了一点,superview 会检测到点击,这不是我想要的。我尝试将 UITapGestureRecognizer 添加到滑块,但未调用该操作,并且仍调用超级视图的点击操作。滑块正在工作,所以 userInteractionEnabled 已经是 YES。

有没有办法让 UISlider 拦截水龙头?

【问题讨论】:

  • 为什么要让滑块有一个点击手势识别器?这不是用户使用滑块的方式。当用户滑动UISlider 时,您是否希望滑块按预期工作,而视图上的点击手势不会注册任何点击?
  • @JSA986 滑块点击手势识别器是一个虚拟的,它调用一个空方法。

标签: ios objective-c


【解决方案1】:

事实证明我的变通方法有效,只是我做得不对。

解决方法是在UISlider中增加一个UITapGestureRecognizer,调用一个空方法。这会拦截点击,因此不会调用超级视图的点击。

它不起作用的原因是我将相同的 UITapGestureRecognizer 添加到多个 UISlider。它必须是每个滑块上的不同手势识别器。

【讨论】:

  • 您应该接受自己的答案,因为它可以完美运行。谢谢!
猜你喜欢
  • 2016-04-09
  • 2015-05-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-03-02
  • 2014-11-20
  • 2013-08-20
相关资源
最近更新 更多