自定义iOS 7和8推送和弹出动画

3

我正在使用以下代码进行自定义模型转换 -

For Push

CATransition *transition = [CATransition animation];
transition.type          = kCATransitionPush;
transition.duration      = 0.3;
transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
transition.subtype       = kCATransitionFromTop;

[view.layer addAnimation:transition forKey:nil]; 

For Pop

CATransition *transition = [CATransition animation];
transition.type          = kCATransitionPush;
transition.duration      = 0.3;
transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
transition.subtype       = kCATransitionFromBottom;

[view.layer addAnimation:transition forKey:nil];

view is self.navigationController.view

我该如何更改此代码以实现“放大”和“缩小”动画效果?有什么建议吗?

1个回答

0
你可以使用以下代码:
放大动画:
self.yourComponent.transform = CGAffineTransformMakeScale(1, 1);
[UIView beginAnimations:@"zoomIn" context:nil];
[UIView setAnimationDuration:1.0]; // Time in seconds
self.yourComponent.transform = CGAffineTransformMakeScale(1.2, 1.2); // 20% bigger

缩小动画:

self.yourComponent.transform = CGAffineTransformMakeScale(1.2, 1.2);
[UIView beginAnimations:@"zoomOut" context:nil];
[UIView setAnimationDuration:1.0]; // Time in seconds
self.yourComponent.transform = CGAffineTransformMakeScale(1, 1);

self.yourComponent 可以是 UIViewUIImageViewUIButton 或任何其他组件。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接