Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/119.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 在CAAnimationGroup中同时设置位置和旋转动画,最终不会更新位置_Ios_Rotation_Position_Caanimation - Fatal编程技术网

Ios 在CAAnimationGroup中同时设置位置和旋转动画,最终不会更新位置

Ios 在CAAnimationGroup中同时设置位置和旋转动画,最终不会更新位置,ios,rotation,position,caanimation,Ios,Rotation,Position,Caanimation,我试图使用显式动画对UIView的position和rotation属性设置动画,结果是rotation已成功更新,但视图的position没有更新,尽管我更新了层的position在我将动画添加到视图的层之后,rotation属性设置为其最终值(我想这就是所谓的显式覆盖隐式动画技术?) 这是我的密码: CABasicAnimation *move = [CABasicAnimation animationWithKeyPath:@"position.y"]; move.fromValue =

我试图使用显式动画对
UIView
position
rotation
属性设置动画,结果是
rotation
已成功更新,但视图的
position
没有更新,尽管我更新了层的
position
在我将动画添加到视图的层之后,
rotation
属性设置为其最终值(我想这就是所谓的显式覆盖隐式动画技术?)

这是我的密码:

CABasicAnimation *move = [CABasicAnimation animationWithKeyPath:@"position.y"];
move.fromValue = @(self.square.center.y);
move.toValue = @(300);

CABasicAnimation *rotate = [CABasicAnimation animationWithKeyPath:@"transform.rotation.z"];
rotate.fromValue = @(DEGREES_TO_RADIANS(0));
rotate.toValue = @(DEGREES_TO_RADIANS(45));

CAAnimationGroup *group = [CAAnimationGroup animation];
group.duration = 1.0;
group.animations = @[move, rotate];

self.square.center = CGPointMake(self.square.center.x, 300);
self.square.transform = CGAffineTransformMakeRotation(M_PI/4);
[self.square.layer addAnimation:group forKey:nil];  
如果我单独实现位置或旋转动画,代码会执行得很好,并且得到了预期的结果。但当它合并到
CAAnimationGroup
中时,位置最终不会更新为最终值。

这里有什么想法吗?

也许可以试试这个:当然有你的价值观:

[UIView animateWithDuration:1.0f animations:^{
   self.square.center = CGPointMake(10, 10);
   self.square.transform =CGAffineTransformMakeRotation(90);
 }completion:nil];