我想在 iOS 5 中从一个视图切换到另一个视图,它可以正常切换。
但我想在FlipBoard 动画等视图之间翻转。
是否可以?如果是,请帮助我在我的项目中执行此操作。
先感谢您。
看看:https ://github.com/mpospese/MPFoldTransition这可能会帮助你
我试图通过使用 CALayers 和 Core Animation 来解决这个问题。我有两个主要层来完成这个动画,一个静态层和一个动画层。
静态层是整个视图的大小。该层没有动画,它只包含两个图像,左侧和右侧(左侧和右侧图像也是您要翻转的页面的屏幕截图)。动画层是整个视图的一半大小,该层动画执行翻转动画。动画层的正面和背面也是当前页面和下一页的屏幕截图。
例如,假设我们要翻到下一页。
静态图层的左侧将包含当前页面左侧的屏幕截图。右侧将包含下一页右侧的屏幕截图。动画层将位于静态视图的顶部,其正面将包含当前页面右侧的屏幕截图。动画层的背面将包含下一页左侧的屏幕截图。
当您平移手指时,您将在动画层的 y 轴上执行 CATransform3DRotate。因此,当您的手指从屏幕右侧移动到左侧时,动画层将翻转并显示静态视图的右侧和自身的背面。
这是在图层(animationLayer CALayer)上执行翻转动画的基本代码。
var t = CATransform3DIdentity
t.m34 = 1.0/850 //Adds depth to the animation
t = CATransform3DRotate(t, newRadianAngleValue, 0, 1, 0)
CATransaction.begin()
CATransaction.setAnimationDuration(0)
yourAnimationCALayer.transform = t
CATransaction.commit()
我创建了自己的使用这个基本概念的库,请查看。(虽然仍在进行中)
在此链接下载代码。它可以像 FlipBorad 一样呈现精确的输出