【技术实现步骤摘要】
基于iOS的自定义转场方法
本专利技术涉及计算机用户界面
,特别涉及一种基于iOS的自定义转场方法。
技术介绍
在目前iOS系统中,实现用户界面转场切换的方式有两种:一种是通过导航控制器方式,将用户界面压入导航控制器的视图栈中;另一种是通过模态推送的方式,将用户界面推到用户界面层级的顶层。两种方法均提供了代理协议模式对转场动画进行自定义,但是由于转场代理的方法十分复杂,且以目前常见的模型视图控制器(ModelViewController,MVC)架构和MVVM(Model-View-ViewModel,MVC的改进版,就是将其中的View的状态和行为抽象化,让我们将视图UI和业务逻辑分开)架构,通过代理实现转场,必然会让转场动画和业务逻辑耦合度过高,并分散整体转场动画逻辑,使得代码不易读难以维护,不易重用,必将导致开发人员开发时间成本大大增加。
技术实现思路
本专利技术提出一种基于iOS的自定义转场方法,解决现有技术的用于自定义转场动画的代理中,转场动画和业务逻辑耦合度过高,分散整体转场动画逻辑,使 ...
【技术保护点】
1.一种基于iOS的自定义转场方法,其特征在于,包括步骤:/n步骤S1:当当前视图控制器发送系统转场动画指令推出下一视图控制器时,判断当前视图控制器是否通过系统转场动画指令传递转场属性配置对象,所述系统转场动画指令用于绑定当前视图控制器和即将推出的下一视图控制器;/n步骤S2:若是,则将下一视图控制器的转场过程代理设置为所述转场属性配置对象;/n步骤S3:调用系统转场动画指令,并读取所述转场属性配置对象;/n步骤S4:所述转场过程代理根据所述转场属性配置对象执行以下配置:/n转场进行的动画配置,用于从当前视图控制器转场到所述下一视图控制器;/n转场返回的动画配置,用于从所述 ...
【技术特征摘要】
1.一种基于iOS的自定义转场方法,其特征在于,包括步骤:
步骤S1:当当前视图控制器发送系统转场动画指令推出下一视图控制器时,判断当前视图控制器是否通过系统转场动画指令传递转场属性配置对象,所述系统转场动画指令用于绑定当前视图控制器和即将推出的下一视图控制器;
步骤S2:若是,则将下一视图控制器的转场过程代理设置为所述转场属性配置对象;
步骤S3:调用系统转场动画指令,并读取所述转场属性配置对象;
步骤S4:所述转场过程代理根据所述转场属性配置对象执行以下配置:
转场进行的动画配置,用于从当前视图控制器转场到所述下一视图控制器;
转场返回的动画配置,用于从所述下一视图控制器转场回到当前视图控制器;
所述转场属性配置对象的内容包括:动画执行时间、动画执行的具体逻辑和动画属性;
步骤S5:当所述转场过程代理配置完成后,开始执行转场进行动画,推出所述下一视图控制器;
步骤S6:在转场进行动画执行过程中,读取动画时间和动画执行的具体逻辑,在整个动画时长中,所有的动画按照所述动画属性,在转场过程中逐个进行播放,最终生成整个转场动画,转场过程包括:
截取当前控制器的相关视图的截图,生成临时动画视图对象;
利用核心动画指令完成动画过程,核心动画指令是指利用iOS的核心动画库实现的动画指令;
动画属性实现的动画利用属性动画指令完成相关的动画过程,属性动画指令是指利用iOS一系列的运行时关联指令,以将当前视图控制器和动画传递到下一视图控制器,运行时关联指令用于将需要使用的无法传递的对象绑定到任意其它可以传递的对象上进行传递。
2.如权...
【专利技术属性】
技术研发人员:肖文,
申请(专利权)人:重庆赋比兴科技有限公司,
类型:发明
国别省市:重庆;50
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。