http://blog.sina.com.cn/s/blog_7011f21c0101a95a.html
Flip board的爬取微博内容组成成杂志风格的想法新颖,但是整个应用给人的感觉和精制度也很不错,其中的翻页效果也被国内很多应用所模仿。github上也有许多实现了tick效果的源代码,这里我只是分析一下实现原理,毕竟一通百通,有了思路,想要去写出更有趣更新颖的动画特效也不会很困难。
分析
1.首先要实现高阶动画我们就必须要借助于CALayer这个类,他是ios上层UI与opengl es的通道,所以通过他我们能实现非常多的特殊效果。
2.tick的效果算是3d效果 有景深感 所以我们需要在layer上添加一下代码来激活3d效果
CATransform3D perspective = CATransform3DIdentity;
float zDistanse = 400.;
perspective.m34 = 1. / -zDistanse;
3.翻转效果实现,想要实现tick的翻转效果 需要3个layer的辅助
(1)一个双面的layer 前面为第一页的上半部分,后面为第二页的下半部分(需要180度翻转),因为需要将这个
沿底边翻转,所以需要将其锚点设置到底部
(2)第二页的上半部分
(3)第一页的下半部分
4 .接下来的事情就很简单了 运用CATransform3DMakeRotatio
翻转结束时将这三个layer一并移除,用户看到的就是第二页了。这样我们的tick就完成了。