1

我有一个视图,其中有一个滚动视图。我想检测触摸开始、移动等方法。我使用了这些方法。这些方法在滚动视图之外工作正常,但在滚动视图内部不起作用。告诉我为什么不起作用,解决方案是什么。

4

2 回答 2

1

您必须继承UIView(作为 MyUIView)并实现触摸委托。

然后将 MyUIView 添加到 UIScrollView

例如:

   @interface MyUIView : UIViewController {

   }
   @end

  @implementation MyUIView

      //implement touch delegate here
   }

在主视图中添加这一行

MyUIView *myUIView = [[MyUIView alloc] init];
myUIView.userIntarctionEnabled = YES;
[yourScrollView addSubView:myUIView.view];

注意:您可以使用UIGustures 而不是子类化。UIGestureRecognizer 类可用于帮助检测和响应 iOS 设备上常见的各种 UI 手势

于 2012-10-22T10:57:42.503 回答
0

使用 convertPoint: toView:方法。

CGPoint *point = [yourView convertPoint:touchPoint toView:yourScrollView];
于 2012-10-22T11:05:18.497 回答