Ios 使用UIScrollView查看时的UIPangestureRecognitor

Ios 使用UIScrollView查看时的UIPangestureRecognitor,ios,uiscrollview,scrollview,uigesturerecognizer,uipangesturerecognizer,Ios,Uiscrollview,Scrollview,Uigesturerecognizer,Uipangesturerecognizer,我有一个使用uipangestrerecognizer的视图 UIPanGestureRecognizer *recognizer = [[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(handlePan:)]; [recognizer setMaximumNumberOfTouches:1]; [recogn

我有一个使用
uipangestrerecognizer
的视图

UIPanGestureRecognizer *recognizer = [[UIPanGestureRecognizer alloc]
                                          initWithTarget:self action:@selector(handlePan:)];
    [recognizer setMaximumNumberOfTouches:1];
    [recognizer setDelegate:self];

[self.view addGestureRecognizer: recognizer];

=======
-(void) handlePan:(UIPanGestureRecognizer*)gestureRecognizer
{
  move subview of self.view
}
子视图内部有一个滚动视图。当滚动视图位于水平滚动的末尾时,如何使用事件-
handlePan:
捕捉手势


您可以使用以下功能:

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer

我从上周开始就在panGesture工作。在我看来,这里有两个问题

1) 用户体验设计。UIScrollView:UIView是“触摸”可识别的
-(BOOL)触摸应开始:(NSSet*)触摸事件:(UIEvent*)在视图中的事件:(UIView*)视图

UIPangestureRecognitor还检测“触摸”

-(CGPoint)触摸位置:(NSUInteger)查看中的触摸索引:(UIView*)视图;//特定触摸的位置

从用户体验的角度来看,纯粹从设计的角度来看,如何在一个UI区域中指出两次触摸之间的差异

2) 代码。看起来您只是想平移视图(UIScrollView或其他UIView的视图)


}

如果要捕捉滚动视图点击手势,请将UIPANGestureRecognitor设置为滚动视图
UIPanGestureRecognizer *recognizer = [[UIPanGestureRecognizer alloc]initWithTarget:self action:@selector(handlePan:)];

// no need to set the number of touches to 1. 1 is default number. 
yourView = [[UIImageView alloc]init]; // or initWithFrame
// add the recognizer to your view 
[youView addGestureRecognizer:recognizer];
//add this view to the mainView
[self addSubview: yourView];
// then process @selector(handlePan:)
-(void) handlePan:(UIPanGestureRecognizer*)gestureRecognizer
{ 
// this method is to deal with location of the panGesture itself, not other third views.
CGPoint touchLocation = [gestureRecognizer locationInView:self]; 
yourView.center = touchLocation;