这是目标c和swift的两个代码,两者都是相同的.使用目标c它可以正确地缩放比例,但是在快速中它只是跳到最终值,我认为这是一个错误,有人可以测试并验证它吗?
目标C.
UIView *testView = [[UIView alloc] initWithFrame:CGRectMake(200, 200, 100, 100)];
testView.backgroundColor = [UIColor greenColor];
[self addSubview:testView];
CAKeyframeAnimation * transformAnim = [CAKeyframeAnimation animationWithKeyPath:@"transform"];
transformAnim.values = @[[NSValue valueWithCATransform3D:CATransform3DMakeRotation(3 * M_PI/180, 0, 0, -1)],
[NSValue valueWithCATransform3D:CATransform3DConcat(CATransform3DMakeScale(1.5, 1.5, 1), CATransform3DMakeRotation(3 * M_PI/180, 0, 0, 1))],
[NSValue valueWithCATransform3D:CATransform3DMakeScale(1.5, 1.5, 1)],
[NSValue valueWithCATransform3D:CATransform3DConcat(CATransform3DMakeScale(1.5, 1.5, 1), CATransform3DMakeRotation(-8 * M_PI/180, 0, 0, 1))]];
transformAnim.keyTimes = @[@0, @0.349, @0.618, @1];
transformAnim.duration = 1;
[testView.layer addAnimation:transformAnim forKey:@"test"];
Run Code Online (Sandbox Code Playgroud)
迅速
let testView = UIView(frame: CGRectMake(200, 200, 100, 100))
testView.backgroundColor = UIColor.greenColor() …Run Code Online (Sandbox Code Playgroud)