移動先のビューに添付されているUIGestureRecognisers
で始まります。具体的にはUIPanGestureRecogniser
。このような何か:
UIPanGestureRecognizer *panGestureRecognizer = [[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(handlePan:)];
panGestureRecognizer.maximumNumberOfTouches = 1;
panGestureRecognizer.delegate = self;
[yourView addGestureRecognizer:panGestureRecognizer];
[panGestureRecognizer release];
...
-(void) handlePan:(UIPanGestureRecognizer *) panGesture {
switch (panGesture.state) {
case UIGestureRecognizerStateBegan:
break;
case UIGestureRecognizerStateChanged:
UIView *view = panGesture.view;
CGPoint translation = [panGesture translationInView:view];
[view setCenter:CGPointMake(view.center.x + translation.x, view.center.y + translation.y)];
[panGesture setTranslation:CGPointZero inView:view];
break;
case UIGestureRecognizerStateEnded:
break;
default:
break;
}
}
は基本的には、パンのジェスチャーは、場所やトラックの動きがあり、あなたはあなたのUIView
の中央プロパティにこれを渡しますそれを動かす。
特定のフレームをドロップポイントとして定義し、特定のポイントでジェスチャが終了した場合は、UIView
を最も近いセル(UIGestureRecognizerStateEnded
)にアニメートします。
これは動作していません..すでに同じことを試みましたが、何の働きもありません。 – nik
OK、正しく動作していないもののいくつかのコードを投稿してください。あなたは何の問題を経験していますか? – bandejapaisa