画像のドラッグに問題があります。だから私はこのコードを使用します:
-(void)panDetected:(UIPanGestureRecognizer *)panRecognizer {
CGPoint translation = [panRecognizer translationInView:self.view];
CGPoint imageViewPosition = player1.center;
imageViewPosition.x +=translation.x;
imageViewPosition.y +=translation.y;
player1.center = imageViewPosition;
[panRecognizer setTranslation:CGPointZero inView:self.view];
[self SaveColorRealTime];
}
-(void)pinchDetected:(UIPinchGestureRecognizer *)pinchRecognizer {
CGFloat scale = pinchRecognizer.scale;
player1.transform = CGAffineTransformScale(player1.transform, scale, scale);
pinchRecognizer.scale = 1.0;
}
-(void)rotationDetected:(UIRotationGestureRecognizer *)rotationRecognizer {
CGFloat angle = rotationRecognizer.rotation;
player1.transform = CGAffineTransformRotate(player1.transform, angle);
rotationRecognizer.rotation = 0.0;
}
-(void)tapDetected:(UITapGestureRecognizer *)tapRecognizer {
[UIView animateWithDuration:0.25 animations:^{
player1.center = CGPointMake(CGRectGetMidX(self.view.bounds), CGRectGetMidY(self.view.bounds));
player1.transform = CGAffineTransformIdentity;
}];
}
- (void)viewDidLoad
{
[super viewDidLoad];
player1.userInteractionEnabled = YES;
UIPanGestureRecognizer *panRecognizer = [[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(panDetected:)];
[player1 addGestureRecognizer:panRecognizer];
UIPinchGestureRecognizer *pinchRecognizer = [[UIPinchGestureRecognizer alloc] initWithTarget:self action:@selector(pinchDetected:)];
[player1 addGestureRecognizer:pinchRecognizer];
UIRotationGestureRecognizer *rotationRecognizer = [[UIRotationGestureRecognizer alloc]initWithTarget:self action:@selector(rotationDetected:)];
[player1 addGestureRecognizer:rotationRecognizer];
UITapGestureRecognizer *tapRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapDetected:)];
tapRecognizer.numberOfTapsRequired = 2;
[player1 addGestureRecognizer:tapRecognizer];
ユーザーはビュー上で画像をドラッグできますが、ユーザーが他のビューに移動すると、画像の位置が更新されます。画像の位置を保存する方法はありますか? ありがとう