【问题标题】:How to touch UISlider thumb prevents UIScrollView scrolling如何触摸 UISlider 拇指防止 UIScrollView 滚动
【发布时间】:2012-09-04 09:38:05
【问题描述】:

我见过很多与此类似的问题,但没有一个能完全帮助我。我有许多垂直 UISlider 填充宽 UIScrollView。如果我在滑块上拖动拇指,我希望水平 UIScrollView 被锁定并且只允许垂直滑动。如果我将 UISlider 拖到拇指上,我希望水平 UIScrollView 滚动。如果我在拖动之前触摸拇指,它目前可以工作。

我在滚动视图中重写了 touchesShouldCancelInContentView,但从未在该方法中遇到断点。

【问题讨论】:

  • 我从禁用滚动视图滚动开始,然后只有在我触摸拇指以外的东西时才允许它。这对我来说是一种倒退,意味着我放在滚动窗口上的所有内容都需要显式启用水平滚动。
  • 这不起作用,因为滚动视图没有使用启用滚动的触摸来滚动。第二根手指滚动。
  • UIScrollView documentation 说:为了做出这个决定,它通过启动一个定时器来临时拦截一个触摸事件,并在定时器触发之前查看触摸手指是否有任何移动。如果触摸是在拇指区域,我想覆盖允许滚动移动的决定。

标签: ios uiscrollview uislider


【解决方案1】:

我必须重写 touchesShouldBegin:withEvent:inContentView 并将 delaysContentTouches 设置为 NO 以拦截触摸消息。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-06-22
    • 2013-06-08
    • 2011-09-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多