CN118069003A - 终端桌面的显示方法、终端、计算机可读介质 - Google Patents
终端桌面的显示方法、终端、计算机可读介质 Download PDFInfo
- Publication number
- CN118069003A CN118069003A CN202211411829.1A CN202211411829A CN118069003A CN 118069003 A CN118069003 A CN 118069003A CN 202211411829 A CN202211411829 A CN 202211411829A CN 118069003 A CN118069003 A CN 118069003A
- Authority
- CN
- China
- Prior art keywords
- icons
- value
- desktop
- icon
- elastic
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 230000008859 change Effects 0.000 claims abstract description 12
- 238000013507 mapping Methods 0.000 claims description 42
- 238000006073 displacement reaction Methods 0.000 claims description 34
- 238000004590 computer program Methods 0.000 claims description 3
- 230000000694 effects Effects 0.000 description 17
- 230000008569 process Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 8
- 230000006399 behavior Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000007704 transition Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 1
- 230000008034 disappearance Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/04817—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance using icons
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04845—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本公开提供一种终端桌面的显示方法,包括:获取对应待处理帧的当前返回值,其中,所述待处理帧为组成桌面动画的多个帧中的任意一者,对应不同帧的返回值符合弹性数值变化规律;根据所述当前返回值确定所述待处理帧对应的动画参数;根据所述动画参数输出所述待处理帧的界面图像。本公开还提供一种终端、一种计算机可读介质。
Description
技术领域
本公开涉及终端技术领域,特别涉及一种终端桌面的显示方法、一种终端、一种计算机可读介质。
背景技术
用户在使用手机等终端设备时,经常会切换到桌面,例如,手机解锁过程中,会经过锁屏界面消失、桌面图标出现两个过程;退出应用程序过程中,会经过应用程度界面关闭、桌面图标出现两个过程。桌面图标出现的过程一般通过桌面动画来实现,而桌面动画中图标从无到有的过渡是否平滑,会影响用户的使用体验。
发明内容
本公开实施例提供一种终端桌面的显示方法、一种终端、一种计算机可读介质。
第一方面,本公开实施例提供一种终端桌面的显示方法,包括:获取对应待处理帧的当前返回值,其中,所述待处理帧为组成桌面动画的多个帧中的一者,对应不同帧的返回值符合弹性数值变化规律;根据所述当前返回值确定所述待处理帧对应的动画参数;根据所述动画参数输出所述待处理帧的界面图像。
第二方面,本公开实施例提供一种终端,包括:一个或多个处理器;存储器,其上存储有一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本公开实施例第一方面所述的终端桌面的显示方法。
第三方面,本公开实施例提供一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现本公开实施例第一方面所述的终端桌面的显示方法。
在本公开实施例中,根据返回值确定图标的动画参数,并根据动画参数生成界面图像,多个帧的界面图像组成桌面动画,其中,对应不同帧的返回值彼此关联,且符合弹性数值变化规律,使得基于该动画参数生成的桌面动画中,不同图标相互关联,且图标的运动符合现实物理世界的弹性运动规律,从而使桌面切换过程中图标的动画效果更加生动、更加流畅,桌面切换过程更加平滑,提升了用户的使用体验。
附图说明
图1是本公开实施例中一种终端桌面的显示方法的流程示意图;
图2是本公开实施例中另一种终端桌面的显示方法中部分步骤的流程示意图;
图3是本公开实施例中一种终端的组成示意图;
图4是本公开实施例中一种计算机可读介质的组成示意图;
图5是本公开实施例中一种桌面坐标的示意图;
图6是本公开实施例中一种弹性单元的示意图;
图7A是本公开实施例中桌面动画中的一帧示意图;
图7B是本公开实施例中桌面动画中的另一帧示意图;
图7C是本公开实施例中桌面动画中的又一帧示意图;
图7D是本公开实施例中桌面动画中的再一帧示意图;
图7E是本公开实施例中桌面动画中的再一帧示意图;
图7F是本公开实施例中桌面动画中的再一帧示意图。
具体实施方式
为使本领域的技术人员更好地理解本公开的技术方案,下面结合附图对本公开提供的终端桌面的显示方法、终端、计算机可读介质进行详细描述。
在下文中将参考附图更充分地描述示例实施例,但是所述示例实施例可以以不同形式来体现且不应当被解释为限于本文阐述的实施例。反之,提供这些实施例的目的在于使本公开透彻和完整,并将使本领域技术人员充分理解本公开的范围。
在不冲突的情况下,本公开各实施例及实施例中的各特征可相互组合。
如本文所使用的,术语“和/或”包括一个或多个相关列举条目的任何和所有组合。
本文所使用的术语仅用于描述特定实施例,且不意欲限制本公开。如本文所使用的,单数形式“一个”和“该”也意欲包括复数形式,除非上下文另外清楚指出。还将理解的是,当本说明书中使用术语“包括”和/或“由……制成”时,指定存在所述特征、整体、步骤、操作、元件和/或组件,但不排除存在或添加一个或多个其它特征、整体、步骤、操作、元件、组件和/或其群组。
除非另外限定,否则本文所用的所有术语(包括技术和科学术语)的含义与本领域普通技术人员通常理解的含义相同。还将理解,诸如那些在常用字典中限定的那些术语应当被解释为具有与其在相关技术以及本公开的背景下的含义一致的含义,且将不解释为具有理想化或过度形式上的含义,除非本文明确如此限定。
在一些相关技术中,切换到桌面的动画效果可以概括为如下三种方案:①无动画效果过渡,桌面图标直接闪现;②整体桌面加动画效果,例如桌面图标整体做位移、透明度、缩放等动画,每个图标在动画效果上没有个性化的差异;③根据图标在屏幕中像素级别的坐标位置,计算每个图标的动画效果参数,使得不同图标有不同动画效果,但是图标与图标的动画效果之间无关联、无交互、无传递性。
通过上述相关技术实现桌面切换时,用户体验都较差。例如,方案①的桌面切换过程非常生硬;方案②桌面切换过程中,图标之间缺乏差异性,所有图标的动画步调统一,缺乏趣味性;方案③图标之间相互独立,缺乏关联,整体动画效果不符合实际的物理世界运动规律,而且整体动画容易变得不流畅且不合逻辑。
有鉴于此,第一方面,参照图1,本公开实施例提供一种终端桌面的显示方法,可以包括下述操作。
S1、获取对应待处理帧的当前返回值,其中,所述待处理帧为组成桌面动画的多个帧中的一者,对应不同帧的返回值符合弹性数值变化规律;
S2、根据所述当前返回值确定所述待处理帧对应的动画参数;
S3、根据所述动画参数输出所述待处理帧的界面图像。
在本公开实施例中,桌面动画可以是由锁屏界面切换到桌面过程中的动画,也可以是由应用程序界面切换到桌面过程中的动画,还可以是不同桌面之间进行切换过程中的动画。本公开实施例对此不做特殊限定。
在本公开实施例中,桌面动画由多个帧组成,待处理帧为组成桌面动画的多个帧中的任意一帧。对于组成桌面动画的每一帧,都至少执行步骤S2和S3。本公开实施例对步骤S1、S2、S3的先后顺序不做特殊限定。例如,可以按照步骤S1至S3的顺序依次执行,也可以同时执行多个步骤。
在一些实施例中,不同帧对应的返回值是弹性系统返回的返回值。弹性系统是能够模拟真实物理世界弹性传递运动规律的模型,其基于弹性算法,能够返回一系列符合弹性数值变化规律的返回值。在本公开实施例中,弹性系统可以对应每一帧返回一个返回值;也可以对应多帧返回一个弹性系统返回值,也即每隔若干帧返回一个返回值。本公开实施例对此不做特殊限定。
在本公开实施例中,界面图像是组成桌面动画的实际要显示的一帧图像。在一些实施例中,步骤S3具体包括:生成界面图像;输出该界面图像以在屏幕上显示。
在本公开实施例中,对应不同帧的返回值彼此关联,且符合弹性数值变化规律,根据返回值确定待处理帧对应的动画参数,使基于该动画参数生成的桌面动画中,不同图标相互关联,且图标的运动符合现实物理世界的弹性运动规律。例如,不同图标之间表现出彼此牵拉、错落有致的动画效果。
本公开实施例提供终端桌面的显示方法中,桌面动画中图标的运动更加符合显示世界的运动规律,图标的动画效果更加生动、更加流畅,桌面切换过程更加平滑,提升了用户的使用体验。
本公开实施例对于如何根据当前返回值确定待处理帧中图标的动画参数不做特殊限定。
在一些实施例中,参照图2,根据所述当前返回值确定所述待处理帧对应的动画参数,可以包括下述操作。
S21、根据多个弹性单元的启动时间确定所述待处理帧对应的待启动弹性单元,其中,多个所述弹性单元的启动时间符合弹性数值变化规律,其中,桌面中的多个图标划分为所述多个弹性单元,每一个弹性单元包括多个图标;
S22、根据所述当前返回值,确定各个所述待启动弹性单元中图标的动画参数,得到所述待处理帧对应的动画参数。
本公开实施例对于如何将桌面中的图标划分为多个弹性单元不做特殊限定。例如,以行为单位,将一行或多行图标划分到一个弹性单元中。例如,以列为单位,将一列或多列图标划分到一个弹性单元中。
在本公开实施例中,将桌面中的图标划分为多个弹性单元,各个弹性单元依次启动,并且各个弹性单元的启动时间符合弹性数值变化规律,从而能够使桌面动画中呈现出多个弹性单元彼此关联、一个弹性单元牵拉另一个弹性单元的动画效果。
本公开实施例对于如何根据当前返回值确定各个待启动弹性单元的动画参数不做特殊限定。
在一些实施例中,根据所述当前返回值,确定各个所述待启动弹性单元中图标的动画参数,包括:
对于任意一个所述待启动弹性单元,根据所述当前返回值和所述待启动弹性单元中各个图标的坐标值,确定各个图标的动画参数,其中,所述动画参数包括位移、缩放比例、透明度中的至少一者。
在本公开实施例中,根据返回值和待启动弹性单元中各个坐标的坐标值,确定各个图标的动画参数,使得各个图标的动画参数也符合弹性数值变化规律,从而使桌面动画中各个图标的运动相互关联,且符合显示物理世界弹性运动规律。
需要说明的是,图标的位移是在弹性单元中图标的位移,例如,以行为单位将桌面的图标划分为多个弹性单元,图标的位移该图标在行方向上的位移。在桌面动画的多个帧中,前一帧中图标的位移大于后一帧中图标的位移,从而在桌面动画中呈现出图标由远及近的动画效果。
图标的缩放比例是相对桌面中图标的正常尺寸的比例。在桌面动画的多个帧中,前一帧中图标的缩放比例大于后一帧中图标的缩放比例,从而在桌面动画中呈现出图标由大变小的动画效果。
在桌面动画的多个帧中,前一帧图标的透明度大于后一帧中图标的透明度,从而在桌面动画中呈现出图标由透明变为不透明的动画效果。
本公开实施例中对于如何确定目标图标的位移不做特殊限定。
在一些实施例中,对于所述待启动弹性单元中的任意一个目标图标,根据所述当前返回值和所述目标图标的坐标值,确定所述目标图标的位移,包括:
根据第一映射关系,将所述当前返回值映射到第一区间,得到第一映射值,其中,所述第一映射关系表征对应不同帧的返回值的取值范围与所述第一区间的映射关系;
根据所述目标图标的坐标值,确定所述目标图标距离所述待启动弹性单元中的中心图标的间距;
根据所述第一映射值和所述间距,计算所述目标图标的位移。
需要说明的是,在本公开实施例中,返回值是一个比例数值,取值范围为(0,1),在确定目标图标的位移时,需要将当前返回值映射为第一区间中的第一映射值。本公开实施例对第一区间不做特殊限定。在一些实施例中,第一区间为(p,0),p的取值范围为500至1000。例如,第一区间为(800,0)。在本公开实施例中,将第一区间设置为(800,0),能够使桌面动画中图标的运动更加平滑。在一些实施例中,第一映射关系表征对应不同帧的返回值的取值范围与第一区间的对应关系。
在一些实施例中,利用映射函数mapValue将当前返回值映射为第一映射值。mapValue可以用如下代码来表示:
public static double mapValueFromRangeToRange(
double value,
double fromLow,
double fromHigh,
double toLow,
double toHigh){
double fromRangeSize=fromHigh-fromLow;
double toRangeSize=toHigh-toLow;
double valueScale=(value-fromLow)/fromRangeSize;
return toLow+(valueScale*toRangeSize);
}
举例说明,当前返回值value=0.5,mapValue的计算过程如下:
fromRangeSize=1-0=1;
toRangeSize=0-800=-800;
valueScale=(0.5-0)/1=0.5;
return 800+(0.5*-800)=400;
得到的第一映射值为400。
需要说明的是,在本公开实施例中,桌面中图标的坐标可以为宫格级别的坐标。如图5所示,每一个图标对应一个宫格,以左上角的图标为原点,每个图标的坐标可以用(cellX,cellY)的二元组表示,cellX表示图标的X轴坐标值,cellY表示图标的Y轴坐标值。
相应地,在本公开实施例中,若以行为单位划分弹性单元,目标图标距离待启动弹性单元中的中心图标的间距,是目标图标与中心图标的X轴坐标值的差;若以列为单位划分弹性单元,目标图标距离待启动弹性单元中的中心图标的间距,是目标图标与中心图标的Y轴坐标值的差。本公开实施例对此不做特殊限定。
在一些实施例中,目标图标距离待启动弹性单元中的中心图标的间距用公式(1)表示:
gapCenterX=|cellX-centerCellX| (1)
其中,gapCenterX为所述间距,cellX为目标图标的X轴坐标值,centerCellX为中心图标的X轴坐标值。
在一些实施例中,以行为单位划分弹性单元,图标的位移为X轴方向上的位移,根据公式(2)计算所述目标图标的位移:
translationX=springValueTranslation×(a1×gapCenterX+b1×gapCenterX2)
(2)
其中,translationX为所述目标图标的位移,springValueTranslation为所述第一映射值,gapCenterX为所述间距,a1、b1为常数。
本公开实施例对a1、b1的取值范围不做特殊限定。在一些实施例中,a1的取值范围为(0.01,0.1),b1的取值范围为(0.05,0.2)。例如,a1=0.05,b1=0.1,能够使桌面动画中图标的运动更加平滑。
本公开实施例对如何确定目标图标的缩放比例不做特殊限定。
在一些实施例中,对于所述待启动弹性单元中的任意一个目标图标,根据所述当前返回值和所述目标图标的坐标值,确定所述目标图标的缩放比例,包括:
根据第二映射关系,将所述当前返回值映射到第二区间,得到第二映射值,其中,所述第二映射关系表征对应不同帧的返回值的取值范围与所述第二区间的映射关系;
根据所述目标图标的坐标值,确定所述目标图标距离所述待启动弹性单元中的中心图标的间距;
根据所述第二映射值和所述间距,计算所述目标图标的缩放比例。
需要说明的是,在本公开实施例中,返回值是一个比例数值,取值范围为(0,1),在确定目标图标的缩放比例时,需要将当前返回值映射为第二区间中的第二映射值。本公开实施例对第二区间不做特殊限定。在一些实施例中,第二区间为(q1,q2),q1的取值范围为1.5至2.5,q2的取值范围为0.5至1.5。例如,第二区间为(2,1)。在本公开实施例中,将第二区间设置为(2,1),能够使桌面动画中图标的运动更加平滑。在一些实施例中,第二映射关系表征对应不同帧的返回值的取值范围与第二区间的对应关系。
在本公开实施例中,若以行为单位划分弹性单元,目标图标距离待启动弹性单元中的中心图标的间距,是目标图标与中心图标的X轴坐标值的差;若以列为单位划分弹性单元,目标图标距离待启动弹性单元中的中心图标的间距,是目标图标与中心图标的Y轴坐标值的差。本公开实施例对此不做特殊限定。在一些实施例中,目标图标距离待启动弹性单元中的中心图标的间距用公式(1)表示。
在一些实施例中,以行为单位划分弹性单元,根据公式(3)计算所述目标图标的缩放比例:
其中,scale为所述目标图标的缩放比例,springValueScale为所述第二映射值,gapCenterX为所述间距,a2、b2为常数。
本公开实施例对a2、b2的取值范围不做特殊限定。在一些实施例中,a2的取值范围为(1,2),b2的取值范围为(0,1)。例如,a2=1.6,b2=0.4,能够使桌面动画中图标的运动更加平滑。
本公开实施例对于如何计算目标图标的透明度不做特殊限定。
在一些实施例中,对于所述待启动弹性单元中的任意一个目标图标,计算所述目标图标的透明度,包括:
根据所述当前返回值,计算所述目标图标的透明度。
在一些实施例中,根据公式(4)计算所述目标图标的透明度:
alpha=springValuec (4)
其中,alpha为所述目标图标的透明度,springValue为所述当前返回值,c为常数。
本公开实施例对c的取值范围不做特殊限定。在一些实施例中,c的取值范围为(2,6)。在一些实施例中,c=4,能够使桌面动画中图标的运动更加平滑。
在一些实施例中,根据当前返回值,确定各个所述待启动弹性单元的动画参数,包括:
对于任意一个所述待启动弹性单元,根据所述当前返回值和所述待启动弹性单元中小组件(widget)的位置,确定所述小组件的动画参数,其中,所述动画参数包括位移、缩放比例、透明度中的至少一者。
本公开实施例对于如何确定widget的动画参数不做特殊限定。
例如,如果widget居中展示(在一行的中间位置)则不计算widget的位移,只计算缩放比例和透明度,其中,可以将当前返回值作为widget的缩放比例。
如果widget不是居中展示,而是位于桌面的左边/右边,则计算widget的位移、缩放比例、透明度,其中,位移表示为springValueTranslation×0.5,其中,springValueTranslation为所述第一映射值。
在一些实施例中,参照图2,在获取对应待处理帧的当前返回值之前,所述显示方法还包括:
S41、获取桌面中各个图标的坐标值;
S42、根据各个图标的坐标值,将多个图标划分为多个所述弹性单元,其中,每一个所述弹性单元包括多个图标。
本公开实施例对于如何将桌面中的图标划分为多个弹性单元不做特殊限定。例如,以行为单位,将一行或多行图标划分到一个弹性单元中。例如,以列为单位,将一列或多列图标划分到一个弹性单元中。
在本公开实施例中,在以行为单位划分弹性单元时,同一个弹性单元对应的行具有相同的弹性单元id。例如,如图6所示,id=0的行为一个弹性单元,id=1的行为一个弹性单元,id=2的行为一个弹性单元,id=3的行为一个弹性单元。
在一些实施例中,根据各个图标的坐标值,将多个图标划分为多个所述弹性单元,包括:
将桌面中的一行或多行图标确定为启动行图标;
将与所述启动行图标的行距相等的一行或多行图标划分到一个所述弹性单元中。
在本公开实施例中启动行图标可以任意指定。
在一些实施例中,将桌面中的一行或多行图标确定为启动行图标,包括:
将桌面中位于中心位置的一行或两行图标确定为所述启动行图标。
在本公开实施例中,若桌面中有奇数行图标,则中间的一行图标所在的位置为中心位置;例如,桌面中有7行图标,按照1至7顺序编号,则第4行图标所在的位置为中心位置。若桌面中有偶数行图标,则中间的两行图标所在的位置为中心位置;例如,桌面中有6行图标,按照1至6顺序编号,则第3行和第4行图标所在的位置为中心位置。在其他示例性的实施方式中,所述中心位置也可以根据其他方式确认,例如,将中间的一个或多个图标所在位置确认为中心位置。
第二方面,参照图3,本公开实施例提供一种终端,其可以包括但不限于:一个或多个处理器101,存储器102,一个或多个I/O接口103。
所述存储器102,其上存储有一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现本公开实施例第一方面所述的终端桌面的显示方法;
所述一个或多个I/O接口103,连接在处理器与存储器之间,配置为实现处理器与存储器的信息交互。
其中,处理器101为具有数据处理能力的器件,其包括但不限于中央处理器(CPU)等;存储器102为具有数据存储能力的器件,其包括但不限于随机存取存储器(RAM,更具体如SDRAM、DDR等)、只读存储器(ROM)、带电可擦可编程只读存储器(EEPROM)、闪存(FLASH);I/O接口(读写接口)103连接在处理器101与存储器102间,能实现处理器101与存储器102的信息交互,其包括但不限于数据总线(Bus)等。
在一些实施例中,处理器101、存储器102和I/O接口103通过总线104相互连接,进而与计算设备的其它组件连接。
第三方面,参照图4,本公开实施例提供一种计算机可读介质,其上存储有计算机程序,程序被处理器执行时实现本公开实施例第一方面所述的终端桌面的显示方法。
为了使本领域技术人员能够更清楚地理解本公开实施例提供的技术方案,下面通过具体的实施例,对本公开实施例提供的技术方案进行详细说明:
实施例
本实施例中,基于如图5所示的桌面布局的宫格级坐标系,对每个图标的动画参数进行计算,进而得到桌面动画。具体流程如下:
读取所有图标的坐标位置(cellX,cellY),以此为基础来进行后续的分组和计算;
根据cellY,计算与总行数中心位置的距离,如图6所示,距离相同行划分到一组(一个弹性单元);
如图6所示,整个桌面图标是一个链式弹性系统,该系统由4个弹性单元组成(分别是id=0、id=1、id=2、id=3的这四组图标)。动画启动时,由全部弹性单元组成的大系统开始返回0-1的返回值(该返回值符合弹性数值变化规律),此时id=0的这组开始启动,进而向下传递返回值到id=1、id=2、id=3,后续的弹性单元以上一个弹性单元传递来的值为启动值,开始计算动画参数。返回值是一个取值范围为0至1的比例值,计算动画参数时,需要将其映射到满足要求的动画参数的数值范围。需要说明的是,此时在桌面动画中能够实现一组一组牵拉一组、一整行一整行出现的动画效果;
根据当前返回值,对组内图标的动画参数进行二次计算,获得组内图标位移、缩放比例、透明度上的差异:
1)对当前返回值进行映射,位移从(0,1)映射至(800,0),缩放从(0,1)映射至(2,1):
在本实施例中,利用映射函数mapValue进行映射,可以表示为:
springValueTranslation=mapValue(value,0,1,800,0);
springValueScale=mapValue(value,0,1,2,1);
其中,springValueTranslation为对应位移的第一映射值,pringValueScale为对应缩放比例的第二映射值。
mapValue可以用如下代码来表示:
public static double mapValueFromRangeToRange(
double value,
double fromLow,
double fromHigh,
double toLow,
double toHigh){
double fromRangeSize=fromHigh-fromLow;
double toRangeSize=toHigh-toLow;
double valueScale=(value-fromLow)/fromRangeSize;
return toLow+(valueScale*toRangeSize);
}
在本实施例中,对于widget的处理策略如下:如果widget居中展示(在一行的中间位置)则不计算widget的位移,只计算缩放比例和透明度,其中,可以将当前返回值作为widget的缩放比例。如果widget不是居中展示,而是位于桌面的左边/右边,则计算widget的位移、缩放比例、透明度,其中,位移表示为springValueTranslation×0.5,其中,springValueTranslation为第一映射值。
2)计算目标图标在X轴上距离中心图标的间距:
gapCenterX=|cellX-centerCellX|
其中,gapCenterX为所述间距,cellX为目标图标的X轴坐标值,centerCellX为中心图标的X轴坐标值。
在本实施例中,每一行图标数量的奇偶不同,算法略有不同。如图6所示,总共4列,为偶数列,则取中间两列为中心列(cellX=1和cellX=2的两列为中心列)。每行的四个图标从左到右的gapCenterX依次为1,0,0,1。
如果布局为奇数列(比如5列),则cellX=2为中心列,那么每行的5个图标从左到右的gapCenterX依次为2,1,0,1,2。
3)根据cellX,计算不同图标在X方向的偏移:
translationX=springValueTranslation×(0.05×gapCenterX+0.1×gapCenterX2)
其中,translationX为所述目标图标的位移,springValueTranslation为所述第一映射值,gapCenterX为所述间距。
4)根据cellX,计算X、Y方向的缩放:
scale=springValueScale(1.6+0.4×gapCenterX)
其中,scale为所述目标图标的缩放比例,springValueScale为所述第二映射值,gapCenterX为所述间距。
5)计算透明度:
alpha=springValue4
其中,alpha为所述目标图标的透明度,springValue为当前返回值。
在本实施例中,同一行中的图标、widget的透明度相同。
图7A、图7B、图7C、图7D、图7E、图7F为基于本实施例生成的桌面动画的示意图,可以看到,桌面动画中,所有图标并非一起出现,而是一组一组出现,且组内图标在位移、缩放比例、透明度上均不相同,而且不同帧中组内图标在位移、缩放比例、透明度的变化符合弹性运行规律,表现出彼此牵拉、错落有致的动画效果。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其它数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光盘存储、磁盒、磁带、磁盘存储或其它磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其它的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其它传输机制之类的调制数据信号中的其它数据,并且可包括任何信息递送介质。
本文已经公开了示例实施例,并且虽然采用了具体术语,但它们仅用于并仅应当被解释为一般说明性含义,并且不用于限制的目的。在一些实例中,对本领域技术人员显而易见的是,除非另外明确指出,否则可单独使用与特定实施例相结合描述的特征、特性和/或元素,或可与其它实施例相结合描述的特征、特性和/或元件组合使用。因此,本领域技术人员将理解,在不脱离由所附的权利要求阐明的本公开的范围的情况下,可进行各种形式和细节上的改变。
Claims (15)
1.一种终端桌面的显示方法,包括:
获取对应待处理帧的当前返回值,其中,所述待处理帧为组成桌面动画的多个帧中的任意一者,对应不同帧的返回值符合弹性数值变化规律;
根据所述当前返回值确定所述待处理帧对应的动画参数;
根据所述动画参数输出所述待处理帧的界面图像。
2.根据权利要求1所述的显示方法,其中,根据所述当前返回值确定所述待处理帧对应的动画参数,包括:
根据多个弹性单元的启动时间确定所述待处理帧对应的待启动弹性单元,其中,多个所述弹性单元的启动时间符合弹性数值变化规律,桌面中的多个图标划分为所述多个弹性单元,每一个弹性单元包括多个图标;
根据所述当前返回值,确定各个所述待启动弹性单元中图标的动画参数,得到所述待处理帧对应的动画参数。
3.根据权利要求2所述的显示方法,其中,根据所述当前返回值,确定各个所述待启动弹性单元中图标的动画参数,包括:
对于任意一个所述待启动弹性单元,根据所述当前返回值和所述待启动弹性单元中各个图标的坐标值,确定各个图标的动画参数,其中,所述动画参数包括位移、缩放比例、透明度中的至少一者。
4.根据权利要求3所述的显示方法,其中,对于所述待启动弹性单元中的任意一个目标图标,根据所述当前返回值和所述目标图标的坐标值,确定所述目标图标的位移,包括:
根据第一映射关系,将所述当前返回值映射到第一区间,得到第一映射值,其中,所述第一映射关系表征对应不同帧的返回值的取值范围与所述第一区间的映射关系;
根据所述目标图标的坐标值,确定所述目标图标距离所述待启动弹性单元中的中心图标的间距;
根据所述第一映射值和所述间距,计算所述目标图标的位移。
5.根据权利要求4所述的显示方法,其中,根据以下公式计算所述目标图标的位移:
translationX=springValueTranslation×(a1×gapCenterX+b1×gapCenterX2)
其中,translationX为所述目标图标的位移,springValueTranslation为所述第一映射值,gapCenterX为所述间距,a1、b1为常数。
6.根据权利要求3所述的显示方法,其中,对于所述待启动弹性单元中的任意一个目标图标,根据所述当前返回值和所述目标图标的坐标值,确定所述目标图标的缩放比例,包括:
根据第二映射关系,将所述当前返回值映射到第二区间,得到第二映射值,其中,所述第二映射关系表征对应不同帧的返回值的取值范围与所述第二区间的映射关系;
根据所述目标图标的坐标值,确定所述目标图标距离所述待启动弹性单元中的中心图标的间距;
根据所述第二映射值和所述间距,计算所述目标图标的缩放比例。
7.根据权利要求6所述的显示方法,其中,根据以下公式计算所述目标图标的缩放比例:
其中,scale为所述目标图标的缩放比例,springValueScale为所述第二映射值,gapCenterX为所述间距,a2、b2为常数。
8.根据权利要求3所述的显示方法,其中,对于所述待启动弹性单元中的任意一个目标图标,计算所述目标图标的透明度,包括:
根据所述当前返回值,计算所述目标图标的透明度。
9.根据权利要求8所述的显示方法,其中,根据以下公式计算所述目标图标的透明度:
alpha=springValuec
其中,alpha为所述目标图标的透明度,springValue为所述当前返回值,c为常数。
10.根据权利要求2所述的显示方法,其中,根据所述当前返回值,确定各个所述待启动弹性单元的动画参数,包括:
对于任意一个所述待启动弹性单元,根据所述当前返回值和所述待启动弹性单元中小组件的位置,确定所述小组件的动画参数,其中,所述动画参数包括位移、缩放比例、透明度中的至少一者。
11.根据权利要求1至10中任意一项所述的显示方法,其中,在获取对应待处理帧的当前返回值之前,所述显示方法还包括:
获取桌面中各个图标的坐标值;
根据各个图标的坐标值,将多个图标划分为多个所述弹性单元,其中,每一个所述弹性单元包括多个图标。
12.根据权利要求11所述的显示方法,其中,根据各个图标的坐标值,将多个图标划分为多个所述弹性单元,包括:
将桌面中的一行或多行图标确定为启动行图标;
将与所述启动行图标的行距相等的一行或多行图标划分到一个所述弹性单元中。
13.根据权利要求12所述的显示方法,其中,将桌面中的一行或多行图标确定为启动行图标,包括:
将桌面中位于中心位置的一行或两行图标确定为所述启动行图标。
14.一种终端,包括:
一个或多个处理器;
存储器,其上存储有一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现根据权利要求1至13中任意一项所述的终端桌面的显示方法。
15.一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现根据权利要求1至13中任意一项所述的终端桌面的显示方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211411829.1A CN118069003A (zh) | 2022-11-11 | 2022-11-11 | 终端桌面的显示方法、终端、计算机可读介质 |
PCT/CN2023/095460 WO2024098713A1 (zh) | 2022-11-11 | 2023-05-22 | 终端桌面的显示方法、终端、计算机可读介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211411829.1A CN118069003A (zh) | 2022-11-11 | 2022-11-11 | 终端桌面的显示方法、终端、计算机可读介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118069003A true CN118069003A (zh) | 2024-05-24 |
Family
ID=91031841
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211411829.1A Pending CN118069003A (zh) | 2022-11-11 | 2022-11-11 | 终端桌面的显示方法、终端、计算机可读介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN118069003A (zh) |
WO (1) | WO2024098713A1 (zh) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107340964A (zh) * | 2017-06-02 | 2017-11-10 | 武汉斗鱼网络科技有限公司 | 一种视图的动画效果实现方法及装置 |
CN107329649A (zh) * | 2017-06-14 | 2017-11-07 | 努比亚技术有限公司 | 动画显示方法、终端及计算机可读存储介质 |
CN109271073B (zh) * | 2018-08-31 | 2022-04-22 | 努比亚技术有限公司 | 桌面动态图标实现方法、终端以及计算机可读介质 |
CN114691002B (zh) * | 2020-12-14 | 2023-10-20 | 华为技术有限公司 | 一种页面滑动的处理方法及相关装置 |
CN115220621A (zh) * | 2021-04-20 | 2022-10-21 | 华为技术有限公司 | 图形界面显示方法、电子设备、介质以及程序产品 |
CN114995929B (zh) * | 2021-11-17 | 2023-04-21 | 荣耀终端有限公司 | 一种弹窗的显示方法及装置 |
-
2022
- 2022-11-11 CN CN202211411829.1A patent/CN118069003A/zh active Pending
-
2023
- 2023-05-22 WO PCT/CN2023/095460 patent/WO2024098713A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2024098713A1 (zh) | 2024-05-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106774821B (zh) | 基于虚拟现实技术的显示方法和系统 | |
CN108780377B (zh) | 进行对象管理和可视化的方法和电子设备以及存储介质 | |
CN112991377A (zh) | 一种基于opencv和shader融合技术的抠像算法 | |
CN109636885B (zh) | 一种用于h5页面的序列帧动画制作方法和系统 | |
CN111476852A (zh) | 阅读器刷新方法、计算设备及计算机存储介质 | |
CN114527980A (zh) | 一种显示渲染方法、装置、电子设备和可读存储介质 | |
CN106294463A (zh) | 一种动态曲线的数据点更新方法和设备 | |
CN110363837A (zh) | 游戏中纹理图像的处理方法及装置、电子设备、存储介质 | |
JP2021089711A (ja) | 動画ブレの検出方法及び装置 | |
CN118069003A (zh) | 终端桌面的显示方法、终端、计算机可读介质 | |
CN107977923B (zh) | 图像处理方法、装置、电子设备及计算机可读存储介质 | |
US20110221775A1 (en) | Method for transforming displaying images | |
CN103444189B (zh) | 全景图片滚动 | |
CN106775634A (zh) | 一种展示块显示方法及装置 | |
CN109544661B (zh) | 面积图绘制方法、装置、计算机设备和存储介质 | |
CN114119661A (zh) | 一种目标追踪处理器、目标追踪方法及装置 | |
CN109242763B (zh) | 图片处理方法、图片处理装置、终端设备 | |
US20080165208A1 (en) | 3-Dimensional graphic processing apparatus and operating method thereof | |
CN113255456A (zh) | 非主动活体检测方法、装置、电子设备及存储介质 | |
CN111708777A (zh) | 一种显示数据的存取方法、装置及显示装置 | |
CN114691252B (zh) | 屏幕显示方法及装置 | |
CN112583996A (zh) | 视频处理方法和视频处理装置 | |
CN117492577B (zh) | 轻量级字库显示方法、装置、微处理器及电子设备 | |
CN115185621B (zh) | 一种场景排布方法、装置、电子设备及存储介质 | |
CN115445188B (zh) | 一种网格地图元素的优化方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |