소리 다른 UIView의 하위보기로 일부 클래스의 클래스 멤버로 정의 된 2 개의 UIImageViews (& b)가 있다고 가정합니다.
당신은 addGestureRecognizer을 UIPanGestureRecognizer의 인스턴스를 생성하고 각 UIImageView에 사용하는 방법에 추가하여 각보기에 제스처를 (터치 드래그) 패닝 감지 도움을 얻을 수 있습니다 : 각 UIPanGestureRecognizer을 만들 때
이
, 당신은 선택을 지정할 필요가 제스처 이벤트를 수신합니다. 일부 샘플 코드
을 지금 :이 didMove라고 가정 해 봅시다
- (void) didMove:(UIPanGestureRecognizer*)recognizer {
UIView* view = [recognizer view];
// Remember our UIImageViews are class members called, a & b
//
UIView* otherView = view == a ? b : a;
if (recognizer.state == UIGestureRecognizerStateBegin
|| recognizer.state == UIGestureRecognizerStateChanged) {
// Moving left will have a negative x, moving right positive
//
CGPoint translation = [recognizer translationInView:view.superview];
view.center = CGPointMake(view.center.x + translation.x, view.center.y);
// Reset so we always track the translation from the current view position
//
[recognizer setTranslation:CGPointZero inView:view.superview];
if (CGRectIntersectsRect(view.frame, otherView.frame)) {
// Translate by the same number of points to keep views in sync
//
otherView.center = CGPointMake(otherView.center.x + translation.x, otherView.center.y);
}
}
}
그것은 정확하게 당신이 필요하지 않을 수 있지만, 그것은 당신에게 그것을 수행하는 방법은 좋은 아이디어를 줄 것이다.
당신은 슬라이딩과 같은 말인가요? – booleanBoy
그래 ... 기본적으로 하나의 UIImageView를 사용하여 팬 제스처가 움직이는 방향에 따라 왼쪽 또는 오른쪽으로 다른 슬라이드를 슬라이드하는 방법을 찾고 있습니다. – Jason
사용자가 스 와이프를하면 다음 이미지가 현재 이미지를 왼쪽으로 밀어야합니까? – booleanBoy