Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- setCenter moves to wrong position on device only
- -(void)move:(id)sender {
- [[[(UITapGestureRecognizer*)sender view] layer] removeAllAnimations];
- [self.frameView bringSubviewToFront:[(UIPanGestureRecognizer*)sender view]];
- CGPoint translatedPoint = [(UIPanGestureRecognizer*)sender translationInView:self.view];
- if([(UIPanGestureRecognizer*)sender state] == UIGestureRecognizerStateBegan) {
- firstX = [[sender view] center].x;
- firstY = [[sender view] center].y;
- }
- translatedPoint = CGPointMake(firstX+translatedPoint.x, firstY+translatedPoint.y);
- [[sender view] setCenter:translatedPoint];
- if([(UIPanGestureRecognizer*)sender state] == UIGestureRecognizerStateEnded) {
- CGFloat finalX = translatedPoint.x;
- CGFloat finalY = translatedPoint.y;
- // NSLog(@"final y,y %1.1f, %1.1f", finalX, finalY);
- // prevent from going off screen
- if(finalX < 10) {
- finalX = 10;
- }
- else if(finalX > 270) {
- finalX = 270;
- }
- if(finalY < 10) {
- finalY = 10;
- }
- else if(finalY > 186) {
- finalY = 186;
- }
- [UIView animateWithDuration:0.3
- animations:^{
- [[sender view] setCenter:CGPointMake(finalX, finalY)];
- }
- completion:^(BOOL finished){
- }];
Add Comment
Please, Sign In to add comment