本公开涉及数据处理技术领域,具体涉及一种显示方法、显示装置、计算机可读介质和电子设备。
背景技术:
伴随着人们生活水平的不断提高,电子设备的屏幕越来越得到人们的关注。为了保证移动终端的显示屏的尺寸更大,同时保证移动终端的整机体积较小,柔性显示屏越来越多的应用于移动终端中,用于制成可伸缩的屏幕,例如:卷轴屏、折叠屏、具有可缩回终端壳体内的活动屏等。
目前,在可伸缩屏展开或者收缩的过程中,一般是根据可伸缩屏的展开或者收缩程度,实时调整显示的当前图像,但是,实时调整当前图像的大小导致系统的计算量较大,同时也有可能当前图像的改变跟不上可伸缩屏的展开或收缩,导致图像的显示与可伸缩屏的可见区域不匹配,图像显示的流畅性较差。
技术实现要素:
本公开的目的在于提供一种显示方法、显示装置、计算机可读介质和电子设备,进而至少在一定程度上提高可伸缩屏展开或者收缩的过程中,显示的图像与可伸缩屏的可见区域的匹配性,提高图像显示的流畅性,同时降低系统的计算量,提升系统性能。
根据本公开的第一方面,提供一种显示方法,包括:
监测所述可伸缩屏的当前状态,所述当前状态包括静止状态和运动状态;
若检测到所述可伸缩屏由所述静止状态切换为运动状态时,获取目标过渡动画,所述目标过渡动画的变化与所述运动状态相适配;
通过所述目标过渡动画替换所述可伸缩屏在所述静态状态下显示的当前图像,以在运动的所述可伸缩屏中显示所述目标过渡动画。
根据本公开的第二方面,提供一种显示装置,包括:
状态监测模块,用于监测所述可伸缩屏的当前状态,所述当前状态包括静止状态和运动状态;
动画获取模块,用于若检测到所述可伸缩屏由所述静止状态切换为运动状态时,获取目标过渡动画,所述目标过渡动画的变化与所述运动状态相适配;
图像替换模块,用于通过所述目标过渡动画替换所述可伸缩屏在所述静态状态下显示的当前图像。
根据本公开的第三方面,提供一种计算机可读介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述的方法。
根据本公开的第四方面,提供一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行时,使得一个或多个处理器实现上述的方法。
本公开的一种实施例所提供的显示方法,可以监测可伸缩屏的当前状态,当前状态包括静止状态和运动状态;若检测到可伸缩屏由静止状态切换为运动状态,则获取目标过渡动画,该目标过渡动画的变化与运动状态相适配;通过目标过渡动画替换可伸缩屏在静态状态下显示的当前图像,以在运动的可伸缩屏中显示目标过渡动画。一方面,通过目标过渡动画替换当前图像,显示与可伸缩屏的运动相适配的目标过渡动画,提高显示的图像与可伸缩屏的可见区域的匹配性,同时,目标过渡动画相比于静态的图像,更加具有趣味性;另一方面,通过目标过渡动画替换当前图像,不需要在运动的可伸缩屏中实时调整当前图像的大小,降低系统的计算量,提升系统性能,同时,保证运动的可伸缩屏中显示的图像的流畅性,提升用户体验。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1示出了可以应用本公开实施例的一种电子设备在收缩状态的结构示意图;
图2示出了可以应用本公开实施例的一种电子设备在展开状态的结构示意图;
图3示意性示出本公开示例性实施例中一种电子设备的爆炸结构示意图;
图4示意性示出本公开示例性实施例中一种电子设备在收缩状态的剖面结构示意图;
图5示意性示出本公开示例性实施例中一种电子设备在展开状态的剖面结构示意图;
图6示意性示出本公开示例性实施例中一种显示方法的流程图;
图7示意性示出本公开示例性实施例中一种通过目标过渡动画替换前图像的流程图;
图8示意性示出本公开示例性实施例中一种控制运动特效动画变化的流程图;
图9示意性示出本公开示例性实施例中一种控制运动特效动画位移的流程图;
图10示意性示出本公开示例性实施例中一种恢复当前图像显示的流程图;
图11示意性示出本公开示例性实施例中一种与展开运动对应的目标过渡动画的示意图;
图12示意性示出本公开示例性实施例中一种与收缩运动对应的目标过渡动画的示意图;
图13示意性示出本公开示例性实施例中一种显示目标过渡动画的流程图;
图14示意性示出本公开示例性实施例中另一种与展开运动对应的目标过渡动画的示意图;
图15示意性示出本公开示例性实施例中另一种与收缩运动对应的目标过渡动画的示意图;
图16示意性示出本公开示例性实施例中显示装置的组成示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
本公开的示例性实施方式提供一种用于实现控制方法的电子设备,其可以是具有可伸缩屏结构的电子设备,如智能手机、平板电脑等。该电子设备至少包括处理器和存储器,存储器用于存储处理器的可执行指令,处理器配置为经由执行可执行指令来执行控制方法。
下面以图1至图5中的电子设备100为例,对电子设备的构造进行示例性说明。本领域技术人员应当理解,除了特别用于移动目的的部件之外,电子设备100的构造也能够应用于固定类型的设备。在另一些实施方式中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件、软件或软件和硬件的组合实现。各部件间的连接关系只是示意性示出,并不构成对电子设备100的结构限定。
请结合图1至图3,本实施方式的电子装置100包括壳体组件10、柔性显示屏30、带动件50及驱动机构70。壳体组件10为中空结构;带动件50、驱动机构70以及摄像头90等组件均可设置在壳体组件10。可以理解的是,本申请实施方式的电子装置100包括但不限于手机、平板等移动终端或者其它便携式电子设备,在本文中,以电子装置100为手机为例进行说明。
在本实施方式中,壳体组件10包括第一壳体12和第二壳体14,第一壳体12和第二壳体14能够相对运动。具体地,在本实施方式中,第一壳体12和第二壳体14滑动连接,也即是说,第二壳体14能够相对第一壳体12滑动。
具体的,请参阅图4及图5,第一壳体12与第二壳体14共同形成有容置空间16。容置空间16可用于放置带动件50、摄像头60及驱动机构70等部件。壳体组件10还可包括后盖18,后盖18与第一壳体12与第二壳体14共同形成容置空间16。
带动件50设置于第二壳体14,柔性显示屏30的一端设置于第一壳体12,柔性显示屏30绕过带动件50,且柔性显示屏的另一端设置于容置空间16内,以使部分柔性显示屏隐藏于容置空间16内,隐藏于容置空间16内的部分柔性显示屏30可不点亮。第一壳体12和第二壳体14相对远离,可通过带动件50带动柔性显示屏30展开,以使得更多的柔性显示屏30暴露于容置空间16外。点亮暴露于容置空间16外部的柔性显示屏30,以使得电子装置100所呈现的显示区域变大。
带动件50具体可为外部带有齿52的转轴结构,柔性显示屏30通过啮合等方式与带动件50相联动,第一壳体12和第二壳体14相对远离时,通过带动件50带动啮合于带动件50上的部分柔性显示屏30移动并展开。
可以理解,带动件50还可为不附带齿52的圆轴,第一壳体12和第二壳体14相对远离时,通过带动件50将卷绕于带动件50上的部分柔性显示屏30撑开,以使更多的柔性显示屏暴露于容置空间16外,并处于平展状态。具体的,带动件50可转动地设置于第二壳体14,在逐步撑开柔性显示屏30时,带动件50可随柔性显示屏30的移动而转动。在其它实施例中,带动件50也可固定在第二壳体14上,带动件50具备光滑的表面。在将柔性显示屏30撑开时,带动件50通过其光滑的表面与柔性显示屏30可滑动接触。
当第一壳体12和第二壳体14相对靠近时,柔性显示屏可通过带动件50带动收回。或者,电子装置100还包括复位件(图未示),柔性显示屏收容于容置空间16的一端与复位件联动,在第一壳体12和第二壳体14相对靠近时,复位件带动柔性显示屏30复位,进而使得部分柔性显示屏收回于容置空间16内。
在本实施方式中,驱动机构70可设置在容置空间16内,驱动机构70可与第二壳体14相联动,驱动机构70用于驱动第二壳体14相对于第一壳体12做相离运动,进而带动柔性显示屏组件30伸展。可以理解,驱动机构70也可以省略,用户可以直接通过手动等方式来使得第一壳体和第二壳体相对运动。
相关技术中,一种方案是在可伸缩屏进行展开或者收缩时,通过静态的图像替换可伸缩屏中显示的系统图像或者应用界面图像,但是,在可伸缩屏进行展开或者收缩时,由于用户可能时刻关注着可伸缩屏的变化情况,如果直接显示静态图像,导致显示较为死板,趣味性较差,降低用户的使用体验。另一种方案是在可伸缩屏进行展开或者收缩时,根据可伸缩屏对应的可见区域的大小,实时调节可伸缩屏中当前显示的系统图像或者应用界面图像,但是这种的方案中,如果实时更新可伸缩屏中显示的系统图像或者应用界面图像,会导致系统的计算量较大,并且也有可能系统图像或者应用界面图像的变化与可伸缩屏的展开或者收缩变化不适配,进而使图像的变化不流畅,降低用户的使用体验。
基于相关技术中出现的一个或者多个问题,本公开实施例首先提供了一种显示方法,可以应用于图1至图5所示的电子设备100中,下面对本公开示例性实施方式的显示方法进行具体说明。
图6示出了本示例性实施方式中一种显示方法的流程,包括以下步骤s610至步骤s630:
在步骤s610中,监测所述可伸缩屏的当前状态,所述当前状态包括静止状态和运动状态。
在一示例性实施例中,当前状态可以是指可伸缩屏在当前时刻所处的状态,例如,在可伸缩屏需要显示相关图像时,可伸缩屏处于不进行展开运动或者收缩运动的静止状态,在可伸缩屏需要展开或者收缩时,可伸缩屏处于展开运动或者收缩运动的运动状态。
可以通过建立监听进程监测可伸缩屏的控制指令以确定可伸缩屏的当前状态,例如,若监听进程监测到用于控制可伸缩屏的展开指令或者收缩指令时,则确定可伸缩屏的当前状态为运动状态,若监听进程监测到用于控制可伸缩屏的停止指令或者等待指令时,则确定可伸缩屏的当前状态为静止状态;也可以通过监测用户控制可伸缩屏运动的带动件的运行情况确定可伸缩屏的当前状态,例如,若监测到带动件的通电并且正在运行,则确定可伸缩屏的当前状态为运动状态,若监测到带动件的不通电或者通电未运行,则确定可伸缩屏的当前状态为静止状态;当然,还可以通过其他方式监测可伸缩屏的当前状态,本示例实施例对此不做特殊限定。
在步骤s620中,若检测到所述可伸缩屏由所述静止状态切换为运动状态,获取目标过渡动画,所述目标过渡动画的变化与所述运动状态相适配。
在一示例性实施例中,目标过渡动画是指预先设置的、用于在可伸缩屏进行展开运动或者收缩运动时替代显示的系统图像或者应用界面图像的动画,例如。目标过渡动画可以是包含底层动画与上层动态元素的过渡动画,也可以是动画内容能够随着可伸缩屏的运动而适应变化的过渡动画,本示例实施例对此不做特殊限定。
在步骤s630中,通过所述目标过渡动画替换所述可伸缩屏在所述静态状态下显示的当前图像,以在运动的所述可伸缩屏中显示所述目标过渡动画。
在一示例性实施例中,当前图像是指可伸缩屏由静止状态切换为运动状态之前,在静止状态下可伸缩屏的可见区域显示的图像,例如,当前图像可以是锁屏界面,也可以是应用界面图像,本示例实施例对此不做特殊限定。在检测到可伸缩屏由静止状态切换为运动状态时,由于运动状态下的可伸缩屏的可见区域是实时变化的,此时,可伸缩屏的可见区域的大小与显示的图像之间大小不一致,会造成不好的使用体验,因此可以通过与可伸缩屏的运动变化相适配的目标过渡动画代替当前显示的图像。
下面对步骤s610至步骤s630进行详细说明。
在一示例性实施例中,目标过渡动画可以包括底层动画和运动特效动画,其中,底层动画可以是指目标过渡动画的背景动画,主要图像内容为一些通用的普通动画元素,运动特效动画可以是指在底层动画上层,作为一种前景动画,该运动特效动画是经过特殊设计的用于适配可伸缩屏运动状态的一种动画,例如,假设运动特效动画中包含的图像内容可以是一个卡通人物,那么,该运动特效动画为一个可重复播放的、固定长度帧数(如4帧)的简单动画,该运动特效动画在播放时可以表现为卡通人物完成一次“迈步动作”,当然,此处仅是示意性举例说明,具体实现中可以提供给用户多种底层动画与运动特效动画的组合,由用户自定义组合设置,本示例实施例不以此为限。一般情况下,运动特效动画的画面尺寸可以小于底层动画的画面尺寸。
可伸缩屏可以包括可见区域以及隐藏区域,其中,可见区域是指可伸缩屏处于第一壳体的容置空间之外的屏幕区域,隐藏区域是指可伸缩屏容纳于第一壳体的容置空间之内的屏幕区域。
具体的,可以通过图7中的步骤实现通过目标过渡动画替换可伸缩屏在所述静态状态下显示的当前图像,参考图7所示,具体可以包括:
步骤s710,通过所述可见区域以及所述隐藏区域共同显示所述底层动画,以实现替换所述可伸缩屏在所述静态状态下显示的当前图像;以及
步骤s720,在所述底层动画的上层显示所述运动特效动画。
其中,可以通过可见区域以及隐藏区域共同显示底层动画,即相当于通过一个与整个可伸缩屏具有相同大小的动画覆盖整个可伸缩屏,可以将可伸缩屏在静态状态时显示的当前图像全部进行替换,并且由于底层动画覆盖整个可伸缩屏,可伸缩屏运动到任意程度时,均能保证底层动画的连贯性,提升运动中的可伸缩屏显示的图像的连续性。
在通过底层动画覆盖整个可伸缩屏之后,可以在底层动画的上层显示经过特殊设计的运动特效动画,以使底层动画作为目标过渡动画的背景动画,运动特效动画作为目标过渡动画的前景动画,实现层次分明的目标过渡动画,提升目标过渡动画的立体感,提升观赏体验。
同时,目标过渡动画中包含的运动特效动画可以显示在可见区域与隐藏区域之间的边界处,这样,可伸缩屏在展开或者收缩的运动中,运动特效动画会时刻在边界处进行显示,实现一种可伸缩屏的运动随着运动特效动画移动的感觉,提升可伸缩屏展开或者收缩时的趣味性。
具体的,可以通过图8中的步骤实现运动特效动画与可伸缩屏的运动相适配,参考图8所示,具体可以包括:
步骤s810,获取所述可伸缩屏在所述运动状态下的运动速度;
步骤s820,根据所述运动速度控制所述运动特效动画的播放速度,以使所述运动特效动画的播放速度与所述运动速度相适配。
其中,运动速度是指可伸缩屏在展开过程中的展开速率或者收缩过程中的收缩速率,例如,可伸缩屏的运动速度可以是20mm/s。具体可以检测带动可伸缩屏运动的带动件的转速确定可伸缩屏的运动,例如,假设带动件的转速可以是1000r/min,此时根据预设的速度-转速映射关系确定可伸缩屏的运动速度为20mm/s,当然,此处仅是示意性举例说明,本示例实施例不以此为限。
可以通过运动特效动画的播放速度控制运动特效动画执行某个动画动作时的变化频率,例如,假设运动特效动画是个卡通人物,在可伸缩屏的运动速度为20mm/s时,调整运动特效动画的播放速度为20帧/s(假设该运动特效动画为一个可重复播放的、长度为4帧的简单动画,该4帧动画在播放时表现出为卡通人物完成一次迈步动作),此时,20帧/s的运动特效动画表现出的卡通人物的腿部的“迈步动作”的变化频率可以是5次/s,在可伸缩屏的运动速度增加到30mm/s时,则调整运动特效动画的播放速度为40帧/s,此时40帧/s的运动特效动画表现出的卡通人物的腿部的“迈步动作”的变化频率可以是10次/s,当然,此处仅是示意性举例说明,本示例实施例不以此为限。
具体的,还可以通过图9中的步骤实现运动特效动画与可伸缩屏的运动相适配,参考图9所示,具体可以包括:
步骤s910,获取所述可伸缩屏在所述运动状态下的位移数据;
步骤s920,根据所述位移数据控制所述运动特效动画在所述底层动画中的相对位移,以使所述运动特效动画在任何时刻与所述可见区域和所述隐藏区域之间的边界线的距离小于或者等于预设的边界距离阈值。
其中,位移数据是指可伸缩屏在运动状态下从初始位置到当前位置所移动的距离,例如,可以在可伸缩屏的可见区域与隐藏区域之间的交界处标记a点,并在可伸缩屏运动过程中,测量a点距离可见区域与隐藏区域之间的交界处的垂直距离,该垂直距离即为可伸缩屏的位移数据。
边界距离阈值是指用于限制运动特效动画在底层动画中进行相对位移,以保证运动特效动画的位移随着可伸缩屏的运动而改变,例如,边界距离阈值可以是2cm,也可以是1cm,当然还可以是0cm,具体该边界距离阈值的设置可以根据电子设备中可伸缩屏的可见区域的宽度进行自定义设置,本示例实施例对此不做特殊限定。
运动特效动画与可见区域和隐藏区域之间的边界线的距离,可以是运动特效动画的画面中心点到边界线的垂直距离,也可以是运动特效动画的画面左右边缘到边界线的垂直距离,本示例实施例对此不作特殊限定。
可以通过可伸缩屏的位移数据控制运动特效动画在底层动画中的位移,以使运动特效动画的运动轨迹与可伸缩屏的位移轨迹相匹配,这样可伸缩屏在移动的过程中,运动特效动画随着可伸缩屏的移动而移动,在任何时刻均处于所述可见区域与所述隐藏区域之间的边界处,保证运动特效动画与可伸缩屏运动的匹配性。
在一示例性实施例中,在可伸缩屏结束运动时,可以通过图10中的步骤恢复可伸缩屏中当前图像的显示,参考图10所示,具体可以包括:
步骤s1010,若检测到所述可伸缩屏由所述运动状态切换为静止状态时,计算所述可见区域的区域面积数据;
步骤s1020,根据所述区域面积数据确定目标分辨率,并生成目标分辨率下的当前图像;
步骤s1030,通过所述目标分辨率下的当前图像替换所述目标过渡动画,以恢复所述可伸缩屏在所述静止状态下的显示。
其中,区域面积数据是指可伸缩屏的可见区域对应的面积数据以及像素尺寸数据。可以获取预先存储的区域面积数据与分辨率的映射关系数据,进而可以根据可见区域的区域面积数据计算当前可见区域对应的目标分辨率。
在得到目标分辨率之后,将原始分辨率的当前图像进行转化,得到目标分辨率下的当前图像,进而可以通过目标分辨率下的当前图像替换目标过渡动画,以使恢复后的当前图像适配当前可见区域的分辨率,提升恢复后的当前图像的匹配度,避免异常显示,提升用户的使用体验。
在另一示例性实施例中,为了进一步降低系统的计算量,减少系统负担,可以通过不包含底层动画以及运动特效动画的目标过渡动画替代当前图像,即目标过渡动画不进行层次划分,通过一个普通的动画替代当前图像的方案,可以预先设置与可伸缩屏展开运动相适配的展开状态下的目标过渡动画,以及与可伸缩屏收缩运动相适配的收缩状态下的目标过渡动画。
具体的,可以先确定可伸缩屏的展开程度,然后可以根据可伸缩屏的展开程度确定目标过渡动画对应的播放时间点,进而通过处于该播放时间点的目标过渡动画替换可伸缩屏在静态状态下显示的当前图像,并且该目标过渡动画的播放速度与可伸缩屏在运动状态下的运动速度相匹配。
其中,展开程度是指可见区域占据整个可伸缩屏的比例,例如,可见区域占据整个可伸缩屏的比例为50%,则可以认为可伸缩屏的展开程度为50%。
假设可伸缩屏从完全收缩到完全展开所需要的时间为10s,则可以预先设置时长为10s的与展开运动对应的目标过渡动画以及与收缩运动对应的目标过渡动画。在确定可伸缩屏的展开程度为50%时,可以认为可伸缩屏已经展开一半,消耗的时间为5s,因此可以直接将与展开运动对应的目标过渡动画或者与收缩运动对应的目标过渡动画的播放时间点设置在5s,这样,在将目标过渡动画显示到可伸缩屏上时,目标过渡动画中的动画内容正好与展开程度为50%的可见区域相适配,保证目标过渡动画与运动中的可伸缩屏对应的可见区域的匹配性,提升图像显示的流畅度。
具体的,可以确定可伸缩屏的当前可见区域与当前隐藏区域,然后可以根据当前可见区域与当前隐藏区域的面积计算可伸缩屏的展开程度。
例如,根据当前可见区域与当前隐藏区域的面积计算可伸缩屏的展开程度的过程,可以如关系式(1)所示:
其中,k可以表示可伸缩屏的展开程度,s1可以表示当前可见区域的面积数据,s2可以表示当前隐藏区域的面积数据。
图11示意性示出本公开示例性实施例中一种与展开运动对应的目标过渡动画的示意图。
参考图11所示,电子设备1100的可伸缩屏可以由静止状态切换为运动状态(例如由静止状态切换为展开运动),在静止状态时可伸缩屏上显示的当前图像可以是锁屏界面图像等系统界面图像或者应用界面图像等,可伸缩屏在展开的过程中,由于实时调整系统界面图像或者应用界面图像的大小会导致系统的计算量较大,因此可以通过目标过渡动画替换当前图像以降低系统的计算量,提升显示的图像的匹配度。
例如,目标过渡动画可以由运动特效动画1101(图11中仅示意性画出了一个,容易理解的是,运动特效动画1102也可以是多个,具体可以根据运动特效动画中的动画内容或者动画尺寸等信息进行确定,本示例实施例不以此为限)以及底层动画1102,在图11中,由于可伸缩屏的运动为展开运动,可以设置底层动画1102为一幅画卷,可以设置运动特效动画1101为一个推着球体的“火柴人”(即展开可伸缩屏时可能是需要进行一项工作或者任务,通过表现为推着球体“承重”前进的“火柴人”,匹配用户的心境,提升用户体验,当然,运动特效动画1101还可以是设计的各种各样的动画内容,本示例实施例不以此为限),随着电子设备1100的可伸缩屏的运动,运动特效动画1101的播放速度以及在底层动画1102中的位置也随着可伸缩屏的运动速度以及位移数据进行相适配的变化,实现一种运动特效动画1102对应的“火柴人”将可伸缩屏推着展开的感觉,提升目标过渡动画的趣味性,使目标过渡动画的动画内容与可伸缩屏的运动相适配,提升目标过渡动画的匹配性,提升用户使用体验。
图12示意性示出本公开示例性实施例中一种与收缩运动对应的目标过渡动画的示意图。
参考图12所示,电子设备1200的可伸缩屏可以由静止状态切换为运动状态(例如由静止状态切换为收缩运动),在静止状态时可伸缩屏上显示的当前图像可以是锁屏界面图像等系统界面图像或者应用界面图像等,可伸缩屏在展开的过程中,由于实时调整系统界面图像或者应用界面图像的大小会导致系统的计算量较大,因此可以通过目标过渡动画替换当前图像以降低系统的计算量,提升显示的图像的匹配度。
例如,目标过渡动画可以由运动特效动画1201以及底层动画1202构成,在图12中,由于可伸缩屏的运动为收缩运动,可以设置底层动画1202为一幅展开的画卷,可以设置运动特效动画1201为一个用小车拉着球体的“火柴人”(即收缩可伸缩屏时可能是完成了工作或者任务,通过表现为小车拉着球体“轻松”前进的“火柴人”,匹配用户的心境,提升用户体验,当然,运动特效动画1201还可以是设计的各种各样的动画内容,本示例实施例不以此为限),随着电子设备1200的可伸缩屏的运动,运动特效动画1201也随着可伸缩屏的运动速度以及位移数据进行相适配的变化,实现一种运动特效动画1201对应的“火柴人”通过小车将可伸缩屏拉着收缩卷起的感觉,提升目标过渡动画的趣味性,使目标过渡动画的动画内容与可伸缩屏的运动相适配,提升目标过渡动画的匹配性,提升用户使用体验。
图13示意性示出本公开示例性实施例中一种显示目标过渡动画的流程图。
参考图13所示,步骤s1301,通过静态状态下的可伸缩屏显示当前图像;
步骤s1302,检测可伸缩屏是否由静止状态切换为运动状态,如果是则继续执行步骤s1303,否则返回执行步骤s1301;
步骤s1303,获取预设的目标过渡动画,并通过目标过渡动画替换当前图像,该目标过渡动画可以包括运动特效动画以及底层动画;
步骤s1304,计算可伸缩屏的展开程度,并根据展开程度确定运动特效动画在底层动画中的初始位置;
步骤s1305,在底层动画中的初始位置处显示运动特效动画,以显示目标过渡动画,并使目标过渡动画与可伸缩屏的展开程度相匹配;
步骤s1306,根据可伸缩屏的运动速度以及位移数据确定运动特效动画的播放速度以及在底层动画中的当前位置;
步骤s1307,根据播放速度和当前位置控制运动特效动画,以使运动特效动画在任何时刻与可见区域和隐藏区域之间的边界线的距离小于或者等于预设的边界距离阈值;
步骤s1308,判断可伸缩屏的运动是否停止,如果是则继续执行步骤s1309,否则返回执行步骤s1306;
步骤s1309,确定停止运动后的可伸缩屏的展开程度,并根据展开程度确定目标分辨率;
步骤s1310,通过目标分辨率下的当前图像恢复显示。
图14示意性示出本公开示例性实施例中另一种与展开运动对应的目标过渡动画的示意图。
参考图14所示,本示例实施中的目标过渡动画可以是普通的动画,即不是由运动特效动画以及底层动画构成的分层次动画。可以预先分别设计可伸缩屏在展开过程或者收缩过程中对应的目标过渡动画。
在图14中,电子设备的可伸缩屏的运动状态可以是展开运动状态,那么,可以设计目标过渡动画1400为与展开运动对应的动画,如,目标过渡动画1400可以设计为一个卡通人物推着一幅画卷或者一张地毯展开的动画。
假设目标过渡动画1400是一个播放长度为10s的动画,其中在0s时刻对应的动画帧可以是1401,在10s时刻对应的动画帧可以是1402,中间的其他时间帧为从动画帧1401变化到动画帧1402的内容,使动画帧1401与可伸缩屏的展开程度为0%时的可见区域1403相匹配,使动画帧1402与可伸缩屏的展开程度为100%时的可见区域1404相匹配(本领域技术人员容易理解的是,图中仅画出了0s与0%、10s与100%的匹配关系,其他动画帧与展开程度的对应关系为0-10s与0-100%之间连续对应,此处省略不画),实现目标过渡动画1400与可伸缩屏的展开运动各时刻均匹配,例如,可伸缩屏的展开程度为50%时,匹配的动画帧应该是目标过渡动画1400在播放时间点为5s时对应的动画帧,因此在检测到可伸缩屏的展开程度为50%时,直接将目标过渡动画1400跳转到播放时间点为5s时进行播放。
图15示意性示出本公开示例性实施例中另一种与收缩运动对应的目标过渡动画的示意图。
参考图15所示,本示例实施中的目标过渡动画可以是普通的动画,即不是由运动特效动画以及底层动画构成的分层次动画。可以预先分别设计可伸缩屏在展开过程或者收缩过程中对应的目标过渡动画。
在图15中,电子设备的可伸缩屏的运动状态可以是收缩运动状态,那么,可以设计目标过渡动画1500为与收缩运动对应的动画,如,目标过渡动画1500可以设计为一个卡通人物用绳子拉着一幅画卷或者一张地毯进行卷起的动画。
假设目标过渡动画1500是一个播放长度为10s的动画,其中在0s时刻对应的动画帧可以是1501,在10s时刻对应的动画帧可以是1502,中间的其他时间帧为从动画帧1501变化到动画帧1502的内容,使动画帧1501与可伸缩屏在收缩运动中的展开程度为0%时的可见区域1503相匹配,使动画帧1402与可伸缩屏在收缩运动中的展开程度为100%时的可见区域1504相匹配(本领域技术人员容易理解的是,图中仅画出了0s与0%、10s与100%的匹配关系,其他动画帧与展开程度的对应关系为0-10s与0-100%之间连续对应,此处省略不画),实现目标过渡动画1500与可伸缩屏的收缩运动各时刻均匹配,例如,可伸缩屏在收缩运动中的展开程度为50%时,匹配的动画帧应该是目标过渡动画1500在播放时间点为5s时对应的动画帧,因此在检测到可伸缩屏的展开程度为50%时,直接将目标过渡动画1500跳转到播放时间点为5s时进行播放。
综上所述,本示例性实施方式中,可以监测可伸缩屏的当前状态,当前状态包括静止状态和运动状态;若检测到可伸缩屏由静止状态切换为运动状态,则获取目标过渡动画,该目标过渡动画的变化与运动状态相适配;通过目标过渡动画替换可伸缩屏在静态状态下显示的当前图像,以在运动的可伸缩屏中显示目标过渡动画。一方面,通过目标过渡动画替换当前图像,显示与可伸缩屏的运动相适配的目标过渡动画,提高显示的图像与可伸缩屏的可见区域的匹配性,同时,目标过渡动画相比于静态的图像,更加具有趣味性;另一方面,通过目标过渡动画替换当前图像,不需要在运动的可伸缩屏中实时调整当前图像的大小,降低系统的计算量,提升系统性能,同时,保证运动的可伸缩屏中显示的图像的流畅性,提升用户体验。
需要注意的是,上述附图仅是根据本公开示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
进一步的,参考图16所示,本示例的实施方式中还提供一种显示装置1600,可以包括状态监测模块1610、动画获取模块1620和图像替换模块1630。其中:
状态监测模块1610用于监测所述可伸缩屏的当前状态,所述当前状态包括静止状态和运动状态;
动画获取模块1620用于若检测到所述可伸缩屏由所述静止状态切换为运动状态,获取目标过渡动画,所述目标过渡动画的变化与所述运动状态相适配;
图像替换模块1630用于通过所述目标过渡动画替换所述可伸缩屏在所述静态状态下显示的当前图像。
在一示例性实施例中,目标过渡动画可以包括底层动画和运动特效动画,可伸缩屏可以包括可见区域以及隐藏区域;图像替换模块1630可以用于:
通过所述可见区域以及所述隐藏区域共同显示所述底层动画,以实现替换所述可伸缩屏在所述静态状态下显示的当前图像;以及
在所述底层动画的上层显示所述运动特效动画。
在一示例性实施例中,显示装置1600还可以包括变化频率确定单元,该变化频率确定单元可以用于:
获取所述可伸缩屏在所述运动状态下的运动速度;
根据所述运动速度控制所述运动特效动画的播放速度,以使所述运动特效动画的播放速度与所述运动速度相适配。
在一示例性实施例中,显示装置1600还可以包括位移控制单元,该位移控制单元可以用于:
获取所述可伸缩屏在所述运动状态下的位移数据;
根据所述位移数据控制所述运动特效动画在所述底层动画中的相对位移,以使所述运动特效动画在任何时刻与所述可见区域和所述隐藏区域之间的边界线的距离小于或者等于预设的边界距离阈值。
在一示例性实施例中,显示装置1600还可以包括图像恢复单元,该图像恢复单元可以用于:
若检测到所述可伸缩屏由所述运动状态切换为静止状态时,计算所述可见区域的区域面积数据;
根据所述区域面积数据确定目标分辨率,并生成目标分辨率下的当前图像;
通过所述目标分辨率下的当前图像替换所述目标过渡动画,以恢复所述可伸缩屏在所述静止状态下的显示。
在一示例性实施例中,图像替换模块1630还可以包括:
展开程度确定单元,用于确定所述可伸缩屏的展开程度;
当前图像替换单元,用于根据所述展开程度确定所述目标过渡动画对应的播放时间点,通过处于所述播放时间点的目标过渡动画替换所述可伸缩屏在所述静态状态下显示的当前图像;其中,所述目标过渡动画的播放速度与所述可伸缩屏在运动状态下的运动速度相匹配。
在一示例性实施例中,展开程度确定单元还可以用于:
确定所述可伸缩屏的当前可见区域与当前隐藏区域;
根据所述当前可见区域与所述当前隐藏区域的面积计算所述可伸缩屏的展开程度。
上述装置中各模块的具体细节在方法部分实施方式中已经详细说明,未披露的细节内容可以参见方法部分的实施方式内容,因而不再赘述。
所属技术领域的技术人员能够理解,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
本公开的示例性实施方式还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本公开的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在终端设备上运行时,程序代码用于使终端设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤,例如可以执行图6至图15中任意一个或多个步骤。
需要说明的是,本公开所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、rf等等,或者上述的任意合适的组合。
此外,可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如java、c 等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施例。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限。
1.一种显示方法,应用于包含可伸缩屏的电子设备,其特征在于,包括:
监测所述可伸缩屏的当前状态,所述当前状态包括静止状态和运动状态;
若检测到所述可伸缩屏由所述静止状态切换为运动状态,获取目标过渡动画,所述目标过渡动画的变化与所述运动状态相适配;
通过所述目标过渡动画替换所述可伸缩屏在所述静态状态下显示的当前图像,以在运动的所述可伸缩屏中显示所述目标过渡动画。
2.根据权利要求1所述的方法,其特征在于,所述目标过渡动画包括底层动画和运动特效动画,所述可伸缩屏包括可见区域以及隐藏区域;
所述通过所述目标过渡动画替换所述可伸缩屏在所述静态状态下显示的当前图像,包括:
通过所述可见区域以及所述隐藏区域共同显示所述底层动画,以实现替换所述可伸缩屏在所述静态状态下显示的当前图像;以及
在所述底层动画的上层显示所述运动特效动画。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
获取所述可伸缩屏在所述运动状态下的运动速度;
根据所述运动速度控制所述运动特效动画的播放速度,以使所述运动特效动画的播放速度与所述运动速度相适配。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
获取所述可伸缩屏在所述运动状态下的位移数据;
根据所述位移数据控制所述运动特效动画在所述底层动画中的相对位移,以使所述运动特效动画在任何时刻与所述可见区域和所述隐藏区域之间的边界线的距离小于或者等于预设的边界距离阈值。
5.根据权利要求2所述的方法,其特征在于,所述方法还包括:
若检测到所述可伸缩屏由所述运动状态切换为静止状态时,计算所述可见区域的区域面积数据;
根据所述区域面积数据确定目标分辨率,并生成目标分辨率下的当前图像;
通过所述目标分辨率下的当前图像替换所述目标过渡动画,以恢复所述可伸缩屏在所述静止状态下的显示。
6.根据权利要求1所述的方法,其特征在于,通过所述目标过渡动画替换所述可伸缩屏在所述静态状态下显示的当前图像,包括:
确定所述可伸缩屏的展开程度;
根据所述展开程度确定所述目标过渡动画对应的播放时间点,通过处于所述播放时间点的目标过渡动画替换所述可伸缩屏在所述静态状态下显示的当前图像;
其中,所述目标过渡动画的播放速度与所述可伸缩屏在运动状态下的运动速度相匹配。
7.根据权利要求6所述的方法,其特征在于,确定所述可伸缩屏的展开程度,包括:
确定所述可伸缩屏的当前可见区域与当前隐藏区域;
根据所述当前可见区域与所述当前隐藏区域的面积计算所述可伸缩屏的展开程度。
8.一种显示装置,其特征在于,包括:
状态监测模块,用于监测所述可伸缩屏的当前状态,所述当前状态包括静止状态和运动状态;
动画获取模块,用于若检测到所述可伸缩屏由所述静止状态切换为运动状态,获取目标过渡动画,所述目标过渡动画的变化与所述运动状态相适配;
图像替换模块,用于通过所述目标过渡动画替换所述可伸缩屏在所述静态状态下显示的当前图像。
9.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的方法。
10.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1至7任一项所述的方法。
技术总结