1
我試圖使用UIPanGestureRecognizer在屏幕上移動一個對象。我的平移代碼似乎很好。我可以輕鬆地移動我的物體。但是當我放開物體時,它會回到原來的位置;它不會留在我平移它的地方。Pan-able視圖不停留在我使用UIPanGestureRecognizer平移它的地方
pan-able對象是一個簡單的UIView,它在我的主self.view字段中移動。例如,我使用XCode中的對象palate添加了UIPanGesture,而不是在viewDidLoad中的代碼中手動添加。
在state =開始的時候,我應用了一個變換來稍微增加比例。 (這也不起作用,但這是另一回事)。
任何人都可以告訴我我要去哪裏嗎?
- (IBAction)bucketTouch:(UIPanGestureRecognizer *)recognizer {
switch ([recognizer state]) {
case UIGestureRecognizerStateBegan:{
[UIView animateWithDuration:.2 animations:^{
self.pail.transform = CGAffineTransformMakeScale(1.25, 1.25);
}];
}
break;
case UIGestureRecognizerStateChanged:{
CGPoint centerPoint = self.pail.center;
CGPoint newPoint = [recognizer translationInView:self.view];
CGPoint finalPoint = CGPointMake(centerPoint.x + newPoint.x, centerPoint.y + newPoint.y);
self.pail.center = finalPoint;
[recognizer setTranslation:CGPointZero inView:self.view];
}
break;
case UIGestureRecognizerStateEnded:{
[self.view sendSubviewToBack:self.pail];
[UIView animateWithDuration:.2 animations:^{
self.pail.transform = CGAffineTransformIdentity;
}];
}
break;
default:
break;
}
}
在此先感謝。 :-)