【问题标题】:objective C touch events problemObjective C 触摸事件问题
【发布时间】:2010-10-28 14:08:49
【问题描述】:

我在 UIScrollView 中有 4 个 UIView。假设其中 1 是一个类似于 iphone 股票应用程序的图表。当我在图表上移动手指时,我需要画一条垂直线。我可以使用 touchesMoved。

但我还需要水平移动我的视图。问题是当我在图表上移动手指时,UIScrollView 水平滚动。

我怎样才能避免这种情况并将这两个识别为不同的事件?

【问题讨论】:

    标签: iphone objective-c iphone-sdk-3.0 ios4


    【解决方案1】:

    UIScrollView 仅在稍有延迟后才将触摸转发到子视图。如果在此延迟触发之前移动了触摸,UIScrollView 会将触摸解释为 contentOffset 的移动。要触摸您的子视图,请尝试按住它一秒钟,然后开始移动。

    您可以将 scrollView 上的 delaysContentTouches 设置为 NO,然后立即转发触摸。

    【讨论】:

      【解决方案2】:

      我在这里找到了解决方案。

      在 touchesBegan 方法上,我需要禁用 UIScrollView 的滚动。然后在 touchesEnded 里面我需要再次启用滚动。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多