基于iOS系统的音乐频谱跳动动画的实现方法技术方案

技术编号:14743553 阅读:168 留言:0更新日期:2017-03-01 18:58
本发明专利技术涉及移动应用开发领域,提供一种基于iOS系统的音乐频谱跳动动画的实现方法,该方法包括:创建至少一个CAReplicatorLayer对象;设置CAReplicatorLayer对象决定如何进行复制图层的属性;创建一个CALayer对象作为基础图层;创建一个能够实现上下移动动画效果的Core Animation动画对象;将CALayer对象添加到CAReplicatorLayer容器,根据配置的复制参数进行复制,将实现的动画效果进行显示。本发明专利技术提出的技术方案通过充分使用系统原生提供的技术,简化了实现此类动画的流程。

【技术实现步骤摘要】

本专利技术属于移动应用开发领域,特别涉及一种基于iOS系统的音乐频谱跳动动画的实现方法
技术介绍
随着移动互联网的快速发展,移动应用更注重人性化体验,而在移动应用的开发过程中动画效果越来越多的被使用,一款有着人性化体验动画的App自然能留住更多用户,在App的某个图文页面上,通过动画展示来描述了一个产品或场景比文字描述更加让App显得有生命力。因此,基于iOS系统开发一款应用程序时,会经常使用到动画效果,在iOS系统进行软件开发,若需要实现动画效果,可通过CoreAnimation库提供的各类方法属性制作出各种动画效果,这些动画效果需要添加到一个CALayer对象上面并显示,才能展示出所开发的动画,虽然CoreAnimation等库提供给开发者很多的基础动画,但是它不能够直接提供一些我们想要的复杂动画,所以需要我们利用iOS提供的这些基础动画库去配合开发实现自定义的动画。当需要开发一款类似于音频频谱跳动的动画时,比如应用正在播放音频时,为了有一个标示正在播放中的状态,一个模仿音频频谱持续跳动的动画自然会让用户知晓当前音频正在播放中,这可代替了生硬的文字描述,给用户提供更优越的体验。虽然可以通过添加多个CALayer来实现,但是该方法会使系统代码变得很复杂,而且也无法充分利用iOS操作系统提供的既有技术,不能提供良好的动画性能。
技术实现思路
【要解决的技术问题】本专利技术的目的是提供一种基于iOS系统的音乐频谱跳动动画的实现方法,以解决以上技术问题之一。【技术方案】本专利技术是通过以下技术方案实现的。本专利技术涉及一种基于iOS系统的音乐频谱跳动动画的实现方法,该方法包括以下步骤:A、创建至少一个CAReplicatorLayer对象,设置CAReplicatorLayer对象的大小位置和背景颜色,所述CAReplicatorLayer对象作为复制图层的容器;B、设置CAReplicatorLayer对象决定如何进行复制图层的属性;C、创建一个CALayer对象作为基础图层,设置其相对于容器的属性,所述属性至少包括位置、大小、颜色参数;D、创建一个能够实现上下移动动画效果的CoreAnimation动画对象;E、将CALayer对象添加到CAReplicatorLayer容器,根据步骤A配置的复制参数进行复制,将步骤D中实现的动画效果进行显示。作为一种优选的实施方式,所述创建的CAReplicatorLayer对象位置大小通过配置frame、bounds、position属性设置,所述创建的CAReplicatorLayer对象的背景颜色通过backgroundColor属性设置。作为另一种优选的实施方式,所述步骤B包括以下步骤:通过instanceCount设置复制多少个图层;通过instanceTransform属性设置复制的图层副本之间的距离和旋转;通过instanceDelay属性设置图层副本间的延迟;通过masksToBounds设置裁剪超出图层容器的子图层。作为另一种优选的实施方式,所述创建的CALayer对象相对于CAReplicatorLayer容器的位置和大小通过frame、bounds、position属性设置,所述创建的CALayer对象的颜色通过backgroundColor属性设置,所述创建的CALayer对象的圆角半径通过cornerRadius属性设置。【有益效果】本专利技术提出的技术方案具有以下有益效果:本专利技术基于iOS系统中的CAReplicatorLayer来实现模拟音频频谱跳动动画,通过充分使用系统原生提供的技术,简化了实现此类动画的流程,提高了代码后期维护的灵活性,同时也增强了动画性能稳定性,能够大大提升用户体验。附图说明图1为本专利技术的实施例一提供的基于iOS系统的音乐频谱跳动动画的实现方法的流程图。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚,下面将对本专利技术的具体实施方式进行清楚、完整的描述。实施例一图1为本专利技术实施例一提供的基于iOS系统的音乐频谱跳动动画的实现方法的流程图。如图1所示,该步骤包括步骤S1至步骤S5,下面分别对各个步骤进行详细介绍。步骤S1:创建一个CAReplicatorLayer对象作为图层容器,设置CAReplicatorLayer对象的大小位置和背景颜色。本实施例中,CAReplicatorLayer对象作为复制图层的容器。具体地,创建的CAReplicatorLayer对象位置大小通过配置frame、bounds、position属性设置,创建的CAReplicatorLayer对象的背景颜色通过backgroundColor属性设置。步骤S2:设置CAReplicatorLayer对象决定如何进行复制图层的属性。具体地,本实施例中,设置CAReplicatorLayer对象决定如何进行复制图层的属性包括:通过instanceCount设置复制多少个图层;通过instanceTransform属性设置复制的图层副本之间的距离和旋转;通过instanceDelay属性设置图层副本间的延迟;通过masksToBounds设置裁剪超出图层容器的子图层。步骤S3:创建一个CALayer对象作为基础图层,设置其相对于容器的属性。其中,属性包括位置、大小、颜色参数,具体地,本实施例中,创建的CALayer对象相对于CAReplicatorLayer容器的位置和大小通过frame、bounds、position属性设置,创建的CALayer对象的颜色通过backgroundColor属性设置,创建的CALayer对象的圆角半径通过cornerRadius属性设置。步骤S4:创建一个能够实现上下移动动画效果的CoreAnimation动画对象。在本实施例中可以通过创建CABasicAnimation对象,设置KeyPath为position.y,通过改变keyPath的值实现上下移动动画;添加到CALayer对象上后即可使CALayer对象具有上下移动的动画效果,CAReplicatorLayer容器复制时会把动画也进行复制。步骤S5:将CALayer对象添加到CAReplicatorLayer容器,实现动画效果的显示。具体地,将CALayer对象添加到CAReplicatorLayer容器,根据步骤S1配置的复制参数进行复制,将步骤S4中实现的动画效果进行显示。通过屏幕显示后,就能实现模拟音频频谱跳动动画效果。需要说明,在实施例一的基础上,在具体的开发过程中,也可以根据开发者不同的需求创建多个CAReplicatorLayer容器、多个CALayer对象,添加多个动画效果,以实现更为复杂的动画效果。从以上实施例可以看出,本专利技术实施例首先创建一个CAReplicatorLayer对象作为Layer的容器,然后创建了一个CALayer对象并通过CoreAnimation添加自定义的不断上下移动的动画效果,由于添加到容器上的子Layer可以复制若干份,所以将创建的Layer添加到该容器中后,设定子Layer复制份数、与复制Layer副本之间的距离、透明度、颜色、旋转、位置等状态属性后,即可实现一个模仿音频频谱跳动的动画效果,并能保证动画效果的性能较好本文档来自技高网...
基于iOS系统的音乐频谱跳动动画的实现方法

【技术保护点】
一种基于iOS系统的音乐频谱跳动动画的实现方法,其特征在于包括以下步骤:A、创建至少一个CAReplicatorLayer对象,设置CAReplicatorLayer对象的大小位置和背景颜色,所述CAReplicatorLayer对象作为复制图层的容器;B、设置CAReplicatorLayer对象决定如何进行复制图层的属性;C、创建一个CALayer对象作为基础图层,设置其相对于容器的属性,所述属性至少包括位置、大小、颜色参数;D、创建一个能够实现上下移动动画效果的Core Animation动画对象;E、将CALayer对象添加到CAReplicatorLayer容器,根据步骤A配置的复制参数进行复制,将步骤D中实现的动画效果进行显示。

【技术特征摘要】
1.一种基于iOS系统的音乐频谱跳动动画的实现方法,其特征在于包括以下步骤:A、创建至少一个CAReplicatorLayer对象,设置CAReplicatorLayer对象的大小位置和背景颜色,所述CAReplicatorLayer对象作为复制图层的容器;B、设置CAReplicatorLayer对象决定如何进行复制图层的属性;C、创建一个CALayer对象作为基础图层,设置其相对于容器的属性,所述属性至少包括位置、大小、颜色参数;D、创建一个能够实现上下移动动画效果的CoreAnimation动画对象;E、将CALayer对象添加到CAReplicatorLayer容器,根据步骤A配置的复制参数进行复制,将步骤D中实现的动画效果进行显示。2.根据权利要求1所述的基于iOS系统的音乐频谱跳动动画的实现方法,其特征在于所述创建的CAReplicatorLayer对象的位置大小通过配置frame、bounds、positi...

【专利技术属性】
技术研发人员:王斌万蕾
申请(专利权)人:四川长虹电器股份有限公司
类型:发明
国别省市:四川;51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1