【问题标题】:Different animation styles like flipboard animations不同的动画风格,如翻板动画
【发布时间】:2015-09-30 09:53:32
【问题描述】:

我是 ios 开发新手。我想要不同的动画风格,比如翻板动画。谁能给我一些示例。

提前致谢

【问题讨论】:

标签: objective-c ios8


【解决方案1】:

我在这方面没有任何经验,但是在阅读了文档之后,我认为您将需要一个库。建议使用 Google 快速搜索:

如果您想编写自己的自定义动画,apple documentation 似乎解释了如何。

【讨论】:

  • 谢谢@Will Sheppard
【解决方案2】:

您可以使用库,但可以通过多种方式转换 UIView 的层,非常容易。

假设您要设置动画的视图名为view,类型为UIView

下面是动画它类似于翻转动画的方法,它围绕 y 轴旋转:

CALayer *layer = view.layer;

CATransform3D rotationAndPerspectiveTransform = CATransform3DIdentity;
rotationAndPerspectiveTransform = CATransform3DTranslate(rotationAndPerspectiveTransform, 0, 0, 20);

rotationAndPerspectiveTransform.m34 = 5.0 / -500;

rotationAndPerspectiveTransform = CATransform3DRotate(rotationAndPerspectiveTransform, angle* M_PI / 180.0f, 0.0f, 1.0f, 0.0f);
layer.transform = rotationAndPerspectiveTransform;

这里的关键函数是CATransform3DRotate,它可以3d旋转图层。

您使用最后 3 个参数 (x, y, z) 指定要绕其旋转的轴,在本例中为 (0,1,0),即 y 轴。

请注意,这不会产生动画,而是使用提供的轴和angle 来定位图层。

要为图层设置动画,您必须在另一个函数中逐步更改angle(例如,使用NSTimer)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-16
    • 2018-03-12
    • 1970-01-01
    • 1970-01-01
    • 2011-04-02
    相关资源
    最近更新 更多