나는 pan, rotate, pinch에 UIGestureRecognizer
을 사용하고 있습니다. 하지만 전 관점에서 적용하고 있습니다. 하위보기 이외의 단추에 대한 제스처를 제거해야합니다. 하지만 팬에 영향을주는 버튼을 사용할 때도 마찬가지입니다. self.view에서 버튼 이동을 제한하는 방법. UIPanGestureRecognizer
코드를 아래에 사용했습니다.UIButton에 대한 제스처 제거
UIPanGestureRecognizer *dbpan = [[UIPanGestureRecognizer alloc] initWithTarget:self
action:@selector(ondbPan:)];
[self.view addGestureRecognizer:dbpan];
[closeButton removeGestureRecognizer:dbpan];
팬 : 그 서브 뷰 클래스있는 UIButton 클래스의 종류 인 경우
- (void)ondbPan:(UIPanGestureRecognizer *)gesture
{
if ((gesture.state == UIGestureRecognizerStateChanged) ||
(gesture.state == UIGestureRecognizerStateEnded)) {
CGPoint offset = [gesture translationInView:self.view];
CGPoint center = gesture.view.center;
center.x += offset.x;
center.y += offset.y;
gesture.view.center = center;
[gesture setTranslation:CGPointZero inView:self.view];
}
}
작동하지 않습니다 ... 같은 오류 – user3496826
내 업데이트 된 답변 확인 –
그것은 나를 위해 작동하지 않습니다. Pan에 대한 업데이트 된 코드를 확인할 수 있습니까? – user3496826