一种页面布局转换方法、装置及电子设备与流程

文档序号:16400756发布日期:2018-12-25 20:06阅读:292来源:国知局
一种页面布局转换方法、装置及电子设备与流程

本发明涉及多媒体显示技术领域,特别是涉及一种页面布局转换方法、装置及电子设备。

背景技术

传统页面布局转换方法中,为了在页面布局转换过程中,实现页面布局转换动画的效果,多采用分步构建页面布局和所需页面布局转换动画的方法,例如,为了使第一页面布局转换到第二页面布局的过程中具有动画效果,首先,构建并加载第一页面布局,再构建所需的页面布局转换动画,然后调取并播放页面布局转换动画,当页面布局转换动画播放结束后,构建并加载第二页面布局,从而完成从第一页面布局到第二页面布局之间的转换。

发明人在实现本发明的过程中发现,现有技术至少存在如下问题:

传统页面布局转换过程中,需要依次构建和加载第一页面布局、转换动画以及第二页面布局,从而使得程序开发方式复杂,编码量多,且多次加载的操作,增加了内存的开销。



技术实现要素:

本发明实施例的目的在于提供一种页面布局转换方法,以简化开发方式,降低编码量。具体技术方案如下:

本发明实施例提供一种页面布局转换方法,包括:

获取起始图像帧为第一页面布局的第一转换动画,所述第一转换动画的结束图像帧为第二页面布局;

播放所述第一转换动画的起始图像帧,并暂停播放所述第一转换动画的其他图像帧;

当需要从所述第一页面布局切换到所述第二页面布局时,继续播放所述第一转换动画;

在所述第一转换动画播放结束后,保持显示所述第一转换动画的结束图像帧。

进一步的,在所述播放所述转换动画的起始帧,并暂停播放所述转换动画的其他图像帧之后,还包括:

当需要从所述第一页面布局切换到第三页面布局时,获取起始图像帧为所述第一页面布局的第二转换动画,所述第二转换动画的结束图像帧为第三页面布局;

播放所述第二转换动画;

在所述第二转换动画播放结束后,保持显示所述第二转换动画的结束图像帧。

进一步的,在所述保持显示所述第一转换动画的结束图像帧之后,还包括:

当需要从所述第二页面布局切换到所述第一页面布局时,反向播放所述第一转换动画;

在所述第一转换动画反向播放结束后,保持显示所述第一转换动画的起始图像帧。

进一步的,所述获取起始图像帧为第一页面布局的第一转换动画,包括:

从预先建立的转换动画数据库中,获取起始图像帧为第一页面布局的第一转换动画,所述转换动画数据库中存储有预先创建的各转换动画,每个转换动画的起始图像帧和结束图像帧为存在转换关系的两个页面布局。

本发明实施例还提供一种页面布局转换装置,所述装置包括:

动画获取模块,用于获取起始图像帧为第一页面布局的第一转换动画,所述第一转换动画的结束图像帧为第二页面布局;

动画播放模块,用于播放所述第一转换动画的起始图像帧,并暂停播放所述第一转换动画的其他图像帧;以及当需要从所述第一页面布局切换到所述第二页面布局时,继续播放所述第一转换动画;并在所述第一转换动画播放结束后,保持显示所述第一转换动画的结束图像帧。

进一步的,所述动画获取模块,还用于在所述动画播放模块播放所述第一转换动画的起始图像帧,并暂停播放所述第一转换动画的其他图像帧之后,当需要从所述第一页面布局切换到第三页面布局时,获取起始图像帧为所述第一页面布局的第二转换动画,所述第二转换动画的结束图像帧为第三页面布局;

所述动画播放模块,还用于播放所述第二转换动画,在所述第二转换动画播放结束后,保持显示所述第二转换动画的结束图像帧。

进一步的,所述动画播放模块,还用于在所述保持显示所述第一转换动画的结束图像帧之后,当需要从所述第二页面布局切换到所述第一页面布局时,反向播放所述第一转换动画;以及在所述第一转换动画反向播放结束后,保持显示所述第一转换动画的起始图像帧。

进一步的,所述动画获取模块,具体用于从预先建立的转换动画数据库中,获取起始图像帧为第一页面布局的第一转换动画,所述转换动画数据库中存储有预先创建的各转换动画,每个转换动画的起始图像帧和结束图像帧为存在转换关系的两个页面布局。

本发明实施例还提供一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;

存储器,用于存放计算机程序;

处理器,用于执行存储器上所存放的程序时,实现上述任一页面布局转换方法的步骤。

本发明实施还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一页面布局转换方法的步骤。

本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一页面布局转换方法。

本发明实施例提供的一种页面布局转换的方法、装置及电子设备,方案中,在需要显示第一页面布局时,可以获取起始图像帧为第一页面布局的第一转换动画,且第一转换动画的结束图像帧为第二页面布局,播放第一转换动画的起始图像帧,并暂停播放第一转换动画的其他图像帧,从而实现显示第一页面布局,并且,当需要从第一页面布局切换到第二页面布局时,继续播放第一转换动画,在第一转换动画播放结束后,保持显示第一转换动画的结束图像帧,即实现了从第一页面布局切换到第二页面布局,由于在切换的过程,仅加载了一次转换动画,相比现有技术,减少了页面布局的加载次数,从而可以简化带有动画效果页面布局转换的开发方式,并降低编码量,同时,减少了内存开销。

当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。

图1为本发明一个实施例提供的页面布局转换方法的流程图;

图2为本发明另一个实施例提供的页面布局转换方法的流程图;

图3为本发明又一个实施例提供的页面布局转换方法的流程图;

图4为本发明一个实施例提供的页面布局转换装置的结构示意图;

图5为本发明实施例提供的电子设备的结构示意图。

具体实施方式

为了给出简化带有动画效果的页面布局转换的开发方式,并降低编码量的实现方案,本发明实施例提供了一种页面布局转换方法、装置及电子设备,以下结合说明书附图对本发明的实施例进行说明。并且在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。

在本发明的一个实施例中,提供一种页面布局转换方法,如图1所示,该方法包括以下步骤:

s101:获取起始图像帧为第一页面布局的第一转换动画,第一转换动画的结束图像帧为第二页面布局。

本步骤中,从预先建立的转换动画数据库中,获取起始图像帧为第一页面布局的第一转换动画,转换动画数据库中存储有预先创建的各转换动画,每个转换动画的起始图像帧和结束图像帧为存在转换关系的两个页面布局;

s102:播放第一转换动画的起始图像帧,并暂停播放第一转换动画的其他图像帧。

本发明实施例中,具体的,在ios系统中,基于coreanimation构建的转换动画,可以通过调用-(void)pauselayer:(calayer*)layer函数,设置参数speed=0,实现动画的暂停播放。

s103:当需要从第一页面布局切换到第二页面布局时,继续播放第一转换动画。

本步骤中,当接收到要求从第一页面布局切换到第二页面布局的输入信息时,将继续播放第一转换动画。

本发明实施例中,具体的,在ios系统中,基于coreanimation构建的转换动画,可以通过调用-(void)resumelayer:(calayer*)layer函数,设置参数speed=1实现动画的继续播放。

s104:在第一转换动画播放结束后,保持显示第一转换动画的结束图像帧。

本发明实施例中,具体的,在ios系统中,基于coreanimation构建的转换动画,调用-(void)pauselayer:(calayer*)layer函数,通过设置参数speed=0将第一转换动画在结束图像帧处暂停播放。

本发明实施例提供的上述页面布局转换方法中,当需要显示第一页面布局时,通过获取起始图像帧为第一页面布局的第一转换动画,且第一转换动画的结束图像帧为第二页面布局,播放第一转换动画的起始图像帧,并暂停播放第一转换动画的其他图像帧,从而实现显示第一页面布局,并且当需要从第一页面布局切换到所述第二页面布局时,继续播放第一转换动画,在第一转换动画播放结束后,保持显示第一转换动画的结束图像帧,即实现了从第一页面布局切换到第二页面布局,由于在切换的过程,仅加载了一次转换动画,相比现有技术,减少了页面布局的加载次数,从而可以简化带有动画效果页面布局转换的开发方式,并降低编码量,同时,减少了内存开销。

在本发明的另一个实施例中,还提供一种页面布局转换方法,如图2所示,该方法包括以下步骤:

s201:获取起始图像帧为第一页面布局的第一转换动画,第一转换动画的结束图像帧为第二页面布局。

本步骤,具体可以采用上述步骤s101描述的方式执行,在此不再进行详细描述。

s202:播放第一转换动画的起始图像帧,并暂停播放所述第一转换动画的其他图像帧。

本步骤,具体可以采用上述步骤s102描述的方式执行,在此不再进行详细描述。

s203:接收切换指令,判断页面转换方式。

本步骤中,当接收的切换指令要求从第一页面布局切换到指定的页面布局时,判断指定的页面布局是否是第二页面布局,

若是,进入步骤s204;

若不是,将指定的页面布局作为第三页面布局,并进入步骤s208。

s204:播放第一转换动画。

本步骤,具体可以采用上述步骤s103描述的方式执行,在此不再进行详细描述。

s205:在第一转换动画播放结束后,保持显示第一转换动画的结束图像帧。

本步骤,具体可以采用上述步骤s104描述的方式执行,在此不再进行详细描述。

s206:当需要从第二页面布局切换到第一页面布局时,反向播放第一转换动画。

本发明实施例中,具体的,在ios系统中,基于coreanimation构建的转换动画,调用caanimation相关函数,设置参数speed=-1,实现反向播放第一转换动画。

s207:在第一转换动画反向播放结束后,保持显示第一转换动画的起始图像帧。

本发明实施例中,具体的,在ios系统中,基于coreanimation构建的转换动画,调用-(void)pauselayer:(calayer*)layer函数,通过设置参数speed=0将第一转换动画在起始图像帧处暂停播放。

s208:获取起始图像帧为第一页面布局的第二转换动画,第二转换动画的结束图像帧为第三页面布局。

本发明实施例中,具体的,当切换指令要求从所述第一页面布局切换到第三页面布局时,从预先建立的转换动画数据库中获取起始图像帧为第一页面布局的第二转换动画,第二转换动画的结束图像帧为第三页面布局。

s209:播放第二转换动画。

本发明实施例中,具体的,在ios系统中,基于coreanimation构建的转换动画,可以通过调用-(void)resumelayer:(calayer*)layer函数,设置参数speed=1实现第二转换动画的播放。

s210:在第二转换动画播放结束后,保持显示第二转换动画的结束图像帧。

本发明实施例中,具体的,在ios系统中,基于coreanimation构建的转换动画,调用-(void)pauselayer:(calayer*)layer函数,通过设置参数speed=0将第二转换动画的在结束图像帧处暂停播放。

本发明实施例提供的上述图2所示的页面布局转换方法中,通过获取起始图像帧为第一页面布局的第一转换动画,且第一转换动画的结束图像帧为第二页面布局,播放第一转换动画的起始图像帧,并暂停播放第一转换动画的其他图像帧,当接收的切换指令要求从第一页面布局切换到指定的页面布局时,指定的页面布局为第二页面布局时,继续播放第一转换动画,在第一转换动画播放结束后,保持显示第一转换动画的结束图像帧。当指定的页面布局不是第二页面时,,获取第二转换动画并进行播放,当第二转换动画播放结束后,保持显示第二转换动画的结束图像帧。另,当需要从第二页面布局切换到第一页面布局时,通过反向播放第一转换动画,当第一转换动画反向播放结束后,保持显示第一转换动画的起始图像帧。可以简化页面布局转换带有动画效果的开发方式,并降低编码量,且能实现各页面布局之间灵活转换。

上述具体实施例,进一步的可以通过创建状态机来实现,如图3所示,该方法包括以下步骤:

s301:创建状态机。

本发明实施例中,应用程序启动后,首先构建状态机,其中,状态机具有四个要素:现态、条件、动作及次态。具体的,将在页面布局中显示的页面转换动画作为状态机的现态,将获取的切换指令作为状态机的条件,将状态机获取所需的页面转换动画作为状态机的动作,获取后的所需的页面转换动画即为状态机的次态。需要强调的是,上述“状态机的次态”是相对于“状态机的现态”而言的,“状态机的次态”一旦被激活,就转变成新的“状态机的现态”。

s302:通过状态机获取起始图像帧为第一页面布局的第一转换动画,第一转换动画的结束帧为第二页面布局。

本发明实施例中,具体的,若应用程序为首次启动,页面布局与状态机同时进行初始化,将初始页面布局作为第一页面布局,状态机获取起始图像帧为第一页面布局的第一转换动画,第一转换动画的结束帧为第二页面布局,其中第一转换动画既为状态机的现态。

若应用程序已经完成了多次页面布局转换,则将最后一次完成页面布局转换后的页面布局作为第一页面布局,最后一次完成页面布局转换前的页面布局作为第二页面布局,最后一次完成页面布局转换的转换动画作为第一转换动画,即最后一次状态机动作后的次态转变成状态机新的的现态。

s303:播放所述第一转换动画的起始图像帧,并暂停播放所述第一转换动画的其他图像帧。

本步骤,具体可以采用上述步骤s102描述的方式执行,在此不再进行详细描述。

s304:接收切换指令,状态机依据切换指令获取所需的页面布局转换动画。

本发明实施例中,具体的,判断接收到的切换指令要求转换后的页面布局是否为第二页面布局,若是,依据切换指令,状态机获取第一转换动画,并进入步骤s305;

若不是,将切换指令要求转换后的页面布局作为第三页面布局,依据切换指令,状态机获取第二转换动画,并进入步骤s309。

s305:播放第一转换动画。

本步骤,具体可以采用上述步骤s103描述的方式执行,在此不再进行详细描述。

s306:在第一转换动画播放结束后,保持显示第一转换动画的结束图像帧。

本步骤,具体可以采用上述步骤s104描述的方式执行,在此不再进行详细描述。

s307:当需要从第二页面布局切换到第一页面布局时,反向播放第一转换动画。

本步骤,具体可以采用上述步骤s206描述的方式执行,在此不再进行详细描述。

s308:在第一转换动画反向播放结束后,保持显示第一转换动画的起始图像帧。

本步骤,具体可以采用上述步骤s207描述的方式执行,在此不再进行详细描述。

s309:播放第二转换动画。

本步骤,具体可以采用上述步骤s209描述的方式执行,在此不再进行详细描述。

s310:在第二转换动画播放结束后,保持显示第二转换动画的结束图像帧。

本步骤,具体可以采用上述步骤s210描述的方式执行,在此不再进行详细描述。

本发明实施例提供的上述图3所示的页面布局转换方法中,通过创建的状态机来获取页面布局转换过程中的转换动画,其中,状态机依据切换指令能够快速的获取所需的转换动画,在简化带有动画效果页面布局转换的开发方式,并降低编码量的基础上,还实现了,在后期的代码维护中,为了实现页面布局过程中播放新的转换动画效果,可以直接通过状态机,加入所需的新的转换动画,或对原始的转换动画进行修改,而不必对其他页面布局转换过程中播放的转换动画进行修改,既增加了代码的扩展性。

基于同一发明构思,根据本发明实施例提供的页面布局转换的方法,本发明实施例还提供了一种页面布局转换装置,如图4所示,该装置包括:

动画获取模块401,用于获取起始图像帧为第一页面布局的第一转换动画,第一转换动画的结束图像帧为第二页面布局;

动画播放模块402,用于播放第一转换动画的起始图像帧,并暂停播放第一转换动画的其他图像帧;以及当需要从第一页面布局切换到第二页面布局时,继续播放第一转换动画;并在第一转换动画播放结束后,保持显第一转换动画的结束图像帧。

进一步的,如图4所示,动画获取模块401,还可以用于在动画播放模块402播放第一转换动画的起始图像帧,并暂停播放第一转换动画的其他图像帧之后,当需要从所述第一页面布局切换到第三页面布局时,获取图像帧为所述第一页面布局的第二转换动画,第二转换动画的结束图像帧为第三页面布局;

动画播放模块402,还可以用于播放第二转换动画,在第二转换动画播放结束后,保持显示第二转换动画的结束图像帧。

进一步的,动画播放模块402,还可以用于在保持显示第一转换动画的结束图像帧之后,当需要从第二页面布局切换到第一页面布局时,反向播放第一转换动画;以及在第一转换动画反向播放结束后,保持显示第一转换动画的起始图像帧。

进一步的,如图4所示,动画获取模块401,具体用于从预先建立的转换动画数据库中,获取起始图像帧为第一页面布局的第一转换动画,上述转换动画数据库中存储有预先创建的各转换动画,每个转换动画的起始图像帧和结束图像帧为存在转换关系的两个页面布局。

本发明实施例还提供了一种电子设备,如图5所示,包括处理器501、通信接口502、存储器503和通信总线504,其中,处理器501,通信接口502,存储器503通过通信总线504完成相互间的通信,

存储器503,用于存放计算机程序;

处理器501,用于执行存储器503上所存放的程序时,实现如下步骤:

获取起始图像帧为第一页面布局的第一转换动画,第一转换动画的结束图像帧为第二页面布局;

播放第一转换动画的起始图像帧,并暂停播放第一转换动画的其他图像帧;

当需要从第一页面布局切换到第二页面布局时,继续播放第一转换动画;

在第一转换动画播放结束后,保持显示第一转换动画的结束图像帧。

上述电子设备提到的通信总线可以是外设部件互连标准(peripheralcomponentinterconnect,pci)总线或扩展工业标准结构(extendedindustrystandardarchitecture,eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

通信接口用于上述电子设备与其他设备之间的通信。

存储器可以包括随机存取存储器(randomaccessmemory,ram),也可以包括非易失性存储器(non-volatilememory,nvm),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。

上述的处理器可以是通用处理器,包括中央处理器(centralprocessingunit,cpu)、网络处理器(networkprocessor,np)等;还可以是数字信号处理器(digitalsignalprocessing,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一页面布局转换方法的步骤。

在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一页面布局转换方法。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solidstatedisk(ssd))等。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、终端设备、计算机可读存储介质、计算机程序产品而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1