作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我想在 iOS 中的两个 View Controller 之间构建动画过渡,类似于 PowerPoint 中的“框”过渡或 Keynote 中的“反射”过渡。
你可以在这里看到它,时间是 2:10: http://youtu.be/1fLQg5hFQQg?t=2m10s
执行此操作的最佳方法是什么?
谢谢!
最佳答案
这将是一个复杂的动画重新创建。你需要使用一个 CAAnimationGroup 来组契约(Contract)时运行的几个不同的动画。您想要围绕 y 轴的旋转设置动画,旋转中心从屏幕上抬起,在正在动画化的 View Controller 和您正在动画化到位的 View 上。
您必须调整变换以使其以透视方式绘制(您向变换中的 .m34 记录添加一个小值)。这是因为 CA 动画默认是正交的(它们不显示透视图。)
反射可以使用 CALayer 的特殊子类创建,它允许您创建层的副本。我现在对那个图层子类的名称一无所知。您将设置 1 个副本,y 轴上的比例为 -1 以将其上下颠倒,并产生变暗效果。我自己从未做过,但我在书籍和网上看到过几个例子。
关于ios - 如何在 iOS 中重现 "box"过渡动画?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10628907/
我是一名优秀的程序员,十分优秀!