有两种看法。
第一个UIScrollView
是放置要缩放的视图的位置。
第二个是UIView
可以处理水龙头的。
两个视图都附有手势识别器。
问题是,即使所有手势识别器都已关闭,滚动视图也不会缩放,直到我完全删除上面的视图(或设置它userInteractionEnabled = NO
)。那么我怎样才能将触摸传递给滚动视图而不丢失其他识别器呢?
有两种看法。
第一个UIScrollView
是放置要缩放的视图的位置。
第二个是UIView
可以处理水龙头的。
两个视图都附有手势识别器。
问题是,即使所有手势识别器都已关闭,滚动视图也不会缩放,直到我完全删除上面的视图(或设置它userInteractionEnabled = NO
)。那么我怎样才能将触摸传递给滚动视图而不丢失其他识别器呢?
我只是将滚动的手势识别器添加到这个自定义视图中
@implementation CustomView
- (void)overridePinchForScroll:(UIScrollView *)scroll
{
[self addGestureRecognizer:scroll.panGestureRecognizer];
[self addGestureRecognizer:scroll.pinchGestureRecognizer];
}
@end
Note.
您应该同时添加平移和捏合手势识别器,因为如果您只添加捏合识别器,则会引发错误:
Ignoring call to [UIPanGestureRecognizer setTranslation:inView:] since gesture recognizer is not active.
而且,当然,因此您仍然可以拖动缩放的内容。