ジェスチャ認識機能を使用しないのはなぜですか?
これは、はるかに単純な実装です。
UIPanGestureRecognizer を AddView に追加するだけです。
UIPanGestureRecognizer *panRecognizer = [[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(move:)];
[panRecognizer setMinimumNumberOfTouches:1];
[panRecognizer setMaximumNumberOfTouches:1];
[panRecognizer setDelegate:self];
[AddView addGestureRecognizer:panRecognizer];
次に、移動を処理します。
-(void)move:(UIPanGestureRecognizer*)recognizer {
CGPoint translatedPoint = [recognizer translationInView:self.view];
if([(UIPanGestureRecognizer*) recognizer state] == UIGestureRecognizerStateBegan) {
_firstY = recognizer.view.center.y;
}
translatedPoint = CGPointMake(recognizer.view.center.x, _firstY+translatedPoint.y);
[recognizer.view setCenter:translatedPoint];
}