繁体   English   中英

CALayer为边界设置动画

[英]CALayer animating the Bounds

是否可以在iPhone上为CALayer的边界设置动画? 如何实现呢? 谢谢!

对的,这是可能的。

[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:1.0f];
[[self view] setBounds:CGRectMake(0.0f, 0.0f, 200.0f, 200.0f)];
[UIView commitAnimations];

这将在1秒钟内将视图控制器的视图从当前边界动画化为200 x 200的边界。 它不会改变原点-只是边界矩形的大小。 顺便说一下,这是隐式动画。 如果需要更复杂的动画,请查看使用CABasicAnimation并显式设置动画。

您是否要为图层内图像的可见部分设置动画,图层本身是否保持大小和位置?

这就是CAScrollLayer的用途。 使用CAScrollLayer代替当前的Layer并将图像渲染layerl作为subLayer添加到CAScrollLayer 然后,您可以使用子层的transform属性来实现该效果。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM