小编说
目前,APP Store上的应用已经超过150万个,而纵观排名较为靠前的应用,无一例外都有着一个共同的特点,那就是良好的用户体验。动画作为用户体验中最复杂、最绚丽的技术已经备受开发人员和产品设计人员的重视。而如何将炫酷的动画效果快速高效地展现出来已经成为iOS开发工程师面临的首要挑战。
《iOS动画——核心技术与案例实战》以“iOS核心动画架构+实战代码”的形式阐述如何根据不同的应用场景设计高效、可靠、复杂的动画效果,为读者带来了丰富的实战动画案例,更从动画系统架构的角度阐释动画的原理,因此本书不仅面向读者“授之以鱼”更加“授之以渔”。
关于本书
iOS动画效果非常丰富,本书一共16章,根据动画实现方式及效果分为4卷。第一卷(第1~5章)介绍显示层动画效果,第二卷(第6~12章)介绍内容层动画效果,第三卷(第13~14章)介绍3D动画效果,第四卷(第15~16章)介绍转场动画效果。这种划分有利于读者在学习的过程中对所要查找的动画效果快速定位,以及将知识点分类掌握。
第一卷为显示层动画效果,即利用UIView图层显示的效果实现各种动画。常见的有位置动画、颜色动画、淡入淡出动画、旋转动画、关键帧动画、逐帧动画等,文中针对要显示的动画效果一般采用3张图渐进描述,对于复杂的动画效果多采用6张图或9张图描述动画的渐变过程。
第二卷为内容层动画效果。内容层动画依赖视图的Layer图层,结合常用Layer子类,如CAEmitterCell粒子动画、CAGradientLayer扫描动画、CAShapeLayer图表类动画、CAReplicatorLayer图层快速复制动画等实现内容层动画展示。
第三卷为3D动画效果。3D动画效果以矩阵变换为基础,利用x、y、z与变换矩阵相互作用实现各种3D效果。比如Cover Flow的3D动画展示效果,如图10所示。
第四卷为转场动画效果。转场动画常用于多视图场景下视图切换,如常见的水滴、翻页、波纹效果,或者自定义视图控制器转场动画。
对于相同类型、相同知识点的动画,书中做了详细的归纳和总结,这种归纳和总结有利于读者对动画整体架构的把握和快速精准的使用。
《iOS动画——核心技术与案例实战》针对每个章节给出适合阅读的人群,便于读者过滤出适合自己的核心内容。
在讲解每个动画案例的同时,尽可能贴近实际使用场景,如第二卷的各种Layer层动画实战案例、Button按钮相关动画效果等。
根据不同维度对动画架构进行划分,可以很好地帮助大家理解iOS动画的结构及不同类型动画之间的相互联系。
读者人群
iOS初级开发工程师:建议从第1章动画入门开始,循序渐进地阅读。
iOS中级开发工程师:建议浏览或者跳过第一卷,重点关注第二、三、四卷。
iOS高级开发工程师:建议挑选工作中需要或感兴趣的章节阅读,如第9章“粒子动画”、第10章“光波扫描动画”。
iOS超级开发工程师:建议从整体架构和动画整理归纳的角度阅读本书。
作者说
在日常工作中,每开发一款APP,我们都会绞尽脑汁想让这款应用与众不同。其实不用太过于纠结系统,因为iOS的硬件都很棒。也不必太过于纠结美工,相信一个稍微靠谱的美工做出来的UI都不会太差。只需要选择和设计一些比较优美的动画,就可以让自己的应用上一个新的台阶。
在工作过程中大家都经历过这三个阶段。第一阶段初入江湖。在这个阶段如果想设计一个比较炫酷的动画效果,要么请教“大神”,要么进行网络搜索,而很少有自己的想法。这主要是因为大家对动画的架构、常用API、常用效果没有一个全面的认识,这个阶段基本属于代码收集阶段。第二阶段渐入佳境。相信大家在这个阶段都会有一些自己的思想,通过不断的尝试、对API不断地调整都能够实现最终想要的效果。总体来说这一阶段属于代码整理阶段。第三阶段登堂入室。需求来了之后在开发人员的大脑中很快被分解为若干子功能,迅速定位子功能需要实现的代码块。通过“搬砖+修改”的模式实现快速开发。这一阶段基本属于代码灵活运用阶段。
如果从零开始一步步完成这样三个阶段,相信大家都能做到,但是这会花费非常多的时间。在工作中我也曾被第一阶段和第二阶段反复困扰过,走了不少弯路,花费了大量的时间和精力,查看了各种官方手册和相关书籍,直到进入第三阶段才体会到“一览众山小”的感觉。所以我很想把iOS关于动画的相关知识为大家抽丝剥茧地整理一番,以帮助更多的人花费更少的时间掌握尽可能多的知识。
小编说:GIF图像格式是常见的一种动态图片格式,无论是在Web端还是在移动端都经常遇到,但是考虑目前iOS还无法原生展现GIF图片,而对于GIF的原生支持暂时也没有像JPG、PNG等图像格式支持得这么全面,因此本文从图片的合成与分解角度...
小编说:本文将实现简单的“登录界面按钮移动效果”,并通过这个动画效果为大家介绍动画设计和分析的思路。 本文的目标不仅仅是让大家弄清楚动画效果是如何通过代码来实现的,更重要的是希望大家通过对本文的学习,掌握动画设计和分析的思路。并以这...
读者评论