我想在 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 一样呈现精确的输出
现在有 Swift UIKIt 替代库吗?