3

我有一个UIScrollViewUIViews里面。我正在尝试做的是在 UIView 被触摸/未触摸时捕获触摸事件。

我遇到的问题是UIScrollView似乎吞下了所有的触摸事件,特别是如果你在UIView.

我最好希望在UIScrollView自动滚动时禁用 userInteraction。

这可能吗?

我已经尝试将其子类化,UIViews但从未在其中调用过触摸事件。

4

2 回答 2

4

您可以使用以下内容将 a 附加tapGesture到您scrollview的:

   UITapGestureRecognizer* tapGesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapGestureUpdated:)];
   tapGesture.delegate = self;
   tapGesture.numberOfTapsRequired = 1;
   tapGesture.numberOfTouchesRequired = 1;
   [self addGestureRecognizer:_tapGesture];

然后在您的- (void)tapGestureUpdated:(UITapGestureRecognizer *)tapGesture方法中,这是您确定触摸位置并确定您的子视图之一是否有选择的责任。然后,您可以在委托上调用一个方法,通知已触摸特定视图。

于 2012-10-22T22:43:10.023 回答
1

也许重新排序您的视图,以便具有与之关联的触摸识别器对象的视图是应用程序识别的。将它在文档大纲中移动到顶部(滚动视图)

于 2012-10-22T22:40:27.343 回答