一种对手势命令的处理方法和装置与流程

文档序号:12304865阅读:281来源:国知局
一种对手势命令的处理方法和装置与流程

本发明涉及信息处理技术领域,具体而言涉及一种在智能终端中使用的对手势命令的处理方法和装置。



背景技术:

目前智能终端已经成为广大用户日常使用的电子产品之一。用户需要使用在例如智能手机或平板电脑等智能终端上安装的各种app来实现需要的功能。例如用户使用新闻类app,或者可以提供新闻的浏览器app等来关注新闻。但每种app对所显示出的新闻有固定的更新时间,当用户想要观看最新发出的新闻时,常常需要手动刷新。目前便捷的手动刷新方法是通过下拉方式来刷新列表数据,即在终端屏幕的显示界面的顶部向下拉动,形成下拉手势,在刷新列表数据后能获取更多的数据展示。

但是,这种下拉刷新的方式应用场景比较单一,仅适合以视图列表显示的页面,而且用户必须从显示界面的顶部向下拉动才行,如果用户触摸到的视图控件是可滑动的,则此时执行视图跟随滚动,而无法执行刷新目的。所以,现有的下拉刷新方法仅适合用于数据刷新,而且下拉手势在触摸屏的位置也受到了一定局限。



技术实现要素:

本发明的目的在于提供一种对手势命令的处理方法和装置,包括上拉或上滑手势命令,以改善上述问题。

本发明第一实施例提供了一种对下拉或下滑手势命令的处理方法,其包括:

在视图容器中布局一个头视图和至少任意一个视图,其中所述头视图和所述至少一个视图的大小为自定义值;

所述视图容器截获下拉或下滑手势事件,当所述至少一个视图不能跟随下拉或下滑手势而向下滚动时,根据此时实时获取的用户在屏幕上下拉或下滑的距离数值使头视图的高度动态增加相应的数值;

根据所述头视图的高度变化不同所述视图容器向其管理的视图分发不同任务。

其中,所述头视图垂直位于所述至少一个视图之上。

其中,所述至少一个视图不能跟随下拉或下滑手势而向下滚动包括:所述至少一个视图为固定不可滚动,或者所述至少一个视图滚动到规定距离后不能再继续滚动。

其中,所述根据头视图的高度变化不同所述视图容器向其管理的视图分发不同任务的步骤包括但不限于:

第1任务:随着所述头视图高度的实时变化而在屏幕上动态添加显示一个动画效果,并且在用户松手结束下拉或下滑手势命令时该第1任务结束;和/或

第2任务:当所述头视图高度大于等于第一预设阈值时所述头视图显示文本、和/或图片、和/或视频内容,并且在用户松手结束下拉或下滑手势命令时该第2任务结束;和/或

第3任务:当所述头视图高度大于等于第二预设阈值时所述头视图显示用于表示松开执行刷新的提示,此时用户松手结束下拉或下滑手势,则所述视图容器向其管理的视图统一分发刷新任务。

其中,还包括:当所述分发的任务结束后,使所述头视图的高度恢复至初始值。

本发明第二实施例提供了一种对上拉或上滑手势命令的处理方法,其包括:

在视图容器中布局一个尾视图和至少任意一个视图,其中所述尾视图和所述至少一个视图的大小为自定义值;

所述视图容器截获上拉或上滑手势事件,当所述至少一个视图不能跟随上拉或上滑手势而向上滚动时,根据此时实时获取的用户在屏幕上上拉或上滑的距离数值使尾视图的高度动态增加相应的数值;

根据所述尾视图的高度变化不同所述视图容器向其管理的视图分发不同任务。

其中,所述尾视图垂直位于所述至少一个视图之下。

其中,所述至少一个视图不能跟随上拉或上滑手势而向上滚动包括:所述至少一个视图为固定不可滚动,或者所述至少一个视图滚动到规定距离后不能再继续滚动。

其中,所述根据尾视图的高度变化不同所述视图容器向其管理的视图分发不同任务的步骤包括但不限于:

第1任务:随着所述尾视图高度的实时变化而在屏幕上动态添加显示一个动画效果,并且在用户松手结束上拉或上滑手势命令时该第1任务结束;和/或

第2任务:当所述尾视图高度大于等于第一预设阈值时所述尾视图显示文本、和/或图片、和/或视频内容,并且在用户松手结束上拉或上滑手势命令时该第2任务结束;和/或

第3任务:当所述尾视图高度大于等于第二预设阈值时所述尾视图显示用于表示松开执行刷新的提示,此时用户松手结束上拉或上滑手势,则所述视图容器向其管理的视图统一分发刷新任务。

其中,还包括:当所述分发的任务结束后,使所述尾视图的高度恢复至初始值。

本发明第三实施例提供了一种对下拉或下滑手势命令的处理装置,其包括一个视图容器模块,其中该视图容器模块包括:

视图设置模块,用于在视图容器中布局一个头视图和至少任意一个视图,其中所述头视图和所述至少一个视图的大小为自定义值;

下拉或下滑手势事件处理模块,用于截获下拉或下滑手势事件,当所述至少一个视图不能跟随下拉或下滑手势而向下滚动时,根据此时实时获取的用户在屏幕上下拉或下滑的距离数值使头视图的高度动态增加相应的数值;

任务分发模块,用于根据所述头视图的高度变化不同,使所述视图容器向其管理的视图分发不同任务。

其中,所述头视图垂直位于所述至少一个视图之上。

其中,所述至少一个视图不能跟随下拉或下滑手势而向下滚动包括:所述至少一个视图为固定不可滚动,或者所述至少一个视图滚动到规定距离后不能再继续滚动。

其中,所述任务分发模块根据所述头视图的高度变化不同,使所述视图容器向其管理的视图分发不同任务包括但不限于:

第1任务:随着所述头视图高度的实时变化而在屏幕上动态添加显示一个动画效果,并且在用户松手结束下拉或下滑手势命令时该第1任务结束;和/或

第2任务:当所述头视图高度大于等于第一预设阈值时所述头视图显示文本、和/或图片、和/或视频内容,并且在用户松手结束下拉或下滑手势命令时该第2任务结束;和/或

第3任务:当所述头视图高度大于等于第二预设阈值时所述头视图显示用于表示松开执行刷新的提示,此时用户松手结束下拉或下滑手势,则所述视图容器向其管理的视图统一分发刷新任务。

其中,所述装置还包括:

头视图高度重置模块,用于当所述分发的任务结束后,使所述头视图的高度恢复至初始值。

本发明第四实施例提供了一种对上拉或上滑手势命令的处理装置,其包括一个视图容器模块,其中该视图容器模块包括:

视图设置模块,用于在视图容器中布局一个尾视图和至少任意一个视图,所述尾视图和所述至少一个视图的大小为自定义值;

上拉或上滑手势事件处理模块,用于截获上拉或上滑手势事件,当所述至少一个视图不能跟随上拉或上滑手势而向上滚动时,根据此时实时获取的用户在屏幕上上拉或上滑的距离数值使尾视图的高度动态增加相应的数值;

任务分发模块,用于根据所述尾视图的高度变化不同,使所述视图容器向其管理的视图分发不同任务。

其中,所述尾视图垂直位于所述至少一个视图之下。

其中,所述至少一个视图不能跟随上拉或上滑手势而向上滚动包括:所述至少一个视图为固定不可滚动,或者所述至少一个视图滚动到规定距离后不能再继续滚动。

其中,所述任务分发模块根据所述尾视图的高度变化不同,使所述视图容器向其管理的视图分发不同任务包括但不限于:

第1任务:随着所述尾视图高度的实时变化而在屏幕上动态添加显示一个动画效果,并且在用户松手结束上拉或上滑手势命令时该第1任务结束;和/或

第2任务:当所述尾视图高度大于等于第一预设阈值时所述尾视图显示文本、和/或图片、和/或视频内容,并且在用户松手结束上拉或上滑手势命令时该第2任务结束;和/或

第3任务:当所述尾视图高度大于等于第二预设阈值时所述尾视图显示用于表示松开执行刷新的提示,此时用户松手结束上拉或上滑手势,则所述视图容器向其管理的视图统一分发刷新任务。

其中,所述装置还包括:

尾视图高度重置模块,用于当所述分发的任务结束后,使所述尾视图的高度恢复至初始值。

另外,本发明还提供了一种存储设备,其中存储有多条指令,所述指令适于由处理器加载并执行第一实施例所述的方法,或者执行第二实施例所述的方法。

有益效果:本发明的一种对手势命令的处理方法和装置,通过将本属于视图列表里的头视图和/或尾视图从视图列表中挪出来装入到视图容器viewgroup中,当用户在终端屏幕上发出下拉或下滑手势命令,或者上拉或上滑手势命令时,视图容器viewgroup控制头视图跟随下拉或下滑手势命令或尾视图跟随上拉或上滑手势命令而变化,进而分发对目标对象的任务执行,包括但不限于:添加并显示动画效果的任务、添加并显示信息内容的任务,信息内容包括文本、和/或图片、和/或视频内容、执行数据刷新任务等。由于本方法利用了视图容器viewgroup的任务分发机制,使得对任务执行的响应时间大大加快;创造性地将本属于视图列表里的头视图和/或尾视图从视图列表中挪出来装入到视图容器viewgroup中,可以极大拓展了下拉手势命令的应用场景,而不局限于数据刷新、不局限于以视图列表显示的页面、下拉手势在触摸屏的位置也不再受限制,用户触摸到的视图控件不仅可以是固定不可滚动的,也可以是可滚动的;当用户触摸到的视图控件是可滚动时,在视图控件滚动到系统规定距离后不能再继续滚动则视图容器viewgroup控制头视图跟随下拉或下滑手势命令或尾视图跟随上拉或上滑手势命令而变化,进而分发对目标对象的任务执行。

附图说明

图1是本发明第一实施例提供了一种对下拉或下滑手势命令的处理方法的流程图;

图2是本发明第二实施例提供了一种对上拉或上滑手势命令的处理方法的流程图;

图3是本发明第三实施例提供了一种对下拉或下滑手势命令的处理装置的示意性框图;

图4是本发明第四实施例提供了一种对上拉或上滑手势命令的处理装置的示意性框图。

具体实施方式

下面将结合本发明实施例和附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

图1是本发明第一实施例提供了一种对下拉或下滑手势命令的处理方法的流程图。如图1所示,本发明的对下拉或下滑手势命令的处理方法包括:

s1:在视图容器中布局一个头视图和至少任意一个视图,其中所述头视图和所述至少一个视图的大小为自定义值。

视图容器viewgroup是视图view的子类,它也具有view的特性,它主要用来充当view的容器,将其中的view视作自己的孩子,对它的子view进行管理,因此视图容器viewgroup里可以创建viewgroup。viewgroup(树根)和它的孩子们(view和viewgroup)以树形结构形成了一个层次结构,view类有接受和处理消息的功能,android系统所产生的消息会在这些viewgroup和view之间传递。

因为对于外部输入命令的传递,由一个view通知另一个view需要花费较长时间,而由父类的视图容器viewgroup将接收的输入命令传递给其包含的view,则花费的时间较短。

本发明基于视图容器viewgroup的特点,更为了扩展将手势命令应用于更多应用场景,本发明将在常规应用中普遍在视图列表listview里添加的头视图headerview和/或尾视图footerview,从从视图列表中挪出来装入到视图容器viewgroup中,即不在视图列表listview里添加头视图headerview和/或尾视图footerview,而是在视图容器viewgroup中加入头视图headerview和/或尾视图footerview。

为了更清楚的描述,在第一实施例中,先在视图容器viewgroup中加入头视图headerview,当然除了头视图,还需要加入至少任意一个视图,该至少任意一个视图是用来在页面上显示具体信息的,根据实际展示需要,加入的视图最少是1个,但常常会有多个,还可以加入视图列表listview。

其中,所述头视图和所述至少一个视图的大小(宽度和高度)可以根据具体应用场景的不同而采用自定义值。优选的,所述头视图的宽度为终端屏幕的显示界面的宽度,其高度为自定义值,所述至少1个视图的大小与终端屏幕的显示区域大小相同或略小,即所述至少1个视图是用来展示信息的,需要铺满屏幕的显示区域(整个内容区域),当然对于例如图片内容等,因此分辨率的不同,不完全都是可以铺满屏幕的整个显示区域,如何显示所述至少1个视图的大小不是本发明的重点,可以根据实际应用场景做任意设计。所述头视图的高度可以设定为0,即将头视图隐藏起来;如何需要在头视图处显示信息,可以将头视图的高度可以设定为非0值。

下面简单介绍在视图容器中布局一个头视图headerview和至少任意一个视图anyview的方法。例如,首先在viewgroup的onmeasure()回调方法中计算和设置headerview和anyview的宽度和高度。可以用下面的方法进程计算和设置:view.measure(measurespec.makemeasurespec(宽度值),measurespec.makemeasurespec(高度值))。

然后再在viewgroup的onlayout()回调方法中布局headerview和anyview的位置。

使用的方法例如:

view.layout(left,top,width,height)

left,top代表view在屏幕的左上角的位置,在安卓系统的常规使用中,屏幕的左上角的坐标是0,0;

width代表view的宽度

height代表view的高度

如果,假设anyview的left=0,top=0,width=屏幕的显示界面的宽度,height=屏幕的显示区域的高度,

则可以推算出headerview的left=0,top=负值,例如-20,这样能保证headerview和anyview在屏幕上显示垂直布局,并且headerview在anyview之上,即所述头视图垂直位于所述至少一个视图之上,且默认设置headerview不可见。

s2:所述视图容器截获下拉或下滑手势事件,当所述至少一个视图不能跟随下拉或下滑手势而向下滚动时,根据此时实时获取的用户在屏幕上下拉或下滑的距离数值使头视图的高度动态增加相应的数值。

当用户在终端屏幕上作出下拉或下滑手势,安卓系统通过将下拉或下滑手势事件层层传递,所述视图容器通过ontouchevent()所述截获下拉或下滑手势事件,根据下拉或下滑手势事件判断是否使所述至少一个视图跟随下拉或下滑手势而向下滚动,当所述至少一个视图为固定不可滚动,或者滚动到规定距离后不能再继续滚动时,也就是说,所述至少一个视图不能跟随下拉或下滑手势而向下滚动包括:所述至少一个视图为固定不可滚动,或者所述至少一个视图滚动到规定距离后不能再继续滚动,根据此时实时获取的用户在屏幕上下拉或下滑的距离数值使头视图的高度动态增加相应的数值,例如假设此时用户在屏幕上下拉或下滑了100像素距离,则使头视图的高度动态增加100像素。

对于用户在终端屏幕上作出下拉或下滑手势的判定可以使用本领域公知的技术,这里不再赘述。

s3:根据所述头视图的高度变化不同所述视图容器向其管理的视图分发不同任务。

可以预先设定所述头视图的不同高度对应不同的任务,这样就可以根据所述头视图的高度变化不同,使所述视图容器向其管理的视图分发不同任务。具体包括但不限于:

第1任务:随着所述头视图高度的实时变化而在屏幕上动态添加显示一个动画效果,并且在用户松手结束下拉或下滑手势命令时该第1任务结束;和/或

第2任务:当所述头视图高度大于等于第一预设阈值时所述头视图显示文本、和/或图片、和/或视频内容,并且在用户松手结束下拉或下滑手势命令时该第2任务结束;和/或

第3任务:当所述头视图高度大于等于第二预设阈值时所述头视图显示用于表示松开执行刷新的提示,此时用户松手结束下拉或下滑手势,则所述视图容器向其管理的视图统一分发刷新任务。

具体解释一下:第1任务的目的是随着所述头视图高度的实时变化,可以在屏幕的任意位置上,优选在头视图位置上,出现一个动画效果,例如不停奔跑的小马;当用户松手结束下拉或下滑手势命令,意味着该第1任务结束,此时动画效果消失不见。第2任务的目的是预先设定第一阈值,当所述头视图高度大于等于第一预设阈值时,所述头视图可以显示文本、和/或图片、和/或视频内容,即可以显示文本信息、图片信息、或者视频信息,也可以同时显示这3种类型信息的任意组合;在用户松手结束下拉或下滑手势命令时,意味着该第2任务结束,即所述头视图所显示的文本、和/或图片、和/或视频内容消失而不再显示。第3任务的目的是预先设定不同于第一阈值的第二阈值,当所述头视图高度大于等于第二预设阈值时,所述头视图显示出提示信息,所述提示信息可以是文本,例如“松开刷新”,也可以是图形;当用户松手结束下拉或下滑手势时执行刷新操作,此时所述视图容器向其管理的视图统一分发刷新任务。当然,数据的刷新需要智能终端接入到互联网,使得可以从服务器上获取最新的数据信息来更换原来的数据信息,更新的数据可以是屏幕上显示的数据信息,还可以包括终端上保存的没有在屏幕上显示的数据。

另外,这里的“和/或”的意思是:当为“或”时的情况,所述视图容器向其管理的视图分发的任务可以是上述3个任务中的任意1种;当为“和”的情况时,所述视图容器向其管理的视图分发的任务可以是上述3个任务中的任意2种组合,例如任务1和任务2组合,或者任务1和任务3组合,也可以在条件符合下分发该3种任务。

在一个优选实施例中,当所述分发的任务结束后,使所述头视图的高度恢复至初始值。例如所述头视图的高度变回0,即所述头视图隐藏起来。

在一个优选实施例中,所述第3任务还包括:在用户没有松手结束上拉或上滑手势之前,所述头视图根据其高度值的不同而显示不同的提示信息。例如,所述头视图根据其高度值不同,可以分别显示出文本“下拉刷新”、“刚刚更新”、“松开刷新”、“返回首页”或其他提示信息等。

本发明第一实施例提供的一种对下拉或下滑手势命令的处理方法,通过将本属于视图列表里的头视图从视图列表中挪出来装入到视图容器viewgroup中,当用户在终端屏幕上发出下拉或下滑手势命令时,视图容器viewgroup控制头视图跟随下拉或下滑手势命令而变化,进而分发对目标对象的任务执行。由于本方法利用了视图容器viewgroup的任务分发机制,使得对任务执行的响应时间大大加快;创造性地将本属于视图列表里的头视图从视图列表中挪出来装入到视图容器viewgroup中,可以极大拓展了下拉手势命令的应用场景,而不局限于数据刷新、不局限于以视图列表显示的页面、下拉手势在触摸屏的位置也不再受限制,用户触摸到的视图控件不仅可以是固定不可滚动的,也可以是可滚动的;当用户触摸到的视图控件是可滚动时,在视图控件滚动到系统规定距离后不能再继续滚动则视图容器viewgroup控制头视图跟随下拉或下滑手势命令而变化,进而分发对目标对象的任务执行。

第一实施例描述了对下拉或下滑手势命令的处理方法,但如果将第一实施例中的头视图headerview换成尾视图footerview,则可以实现对上拉或上滑手势命令的处理方法。

图2是本发明第二实施例提供了一种对上拉或上滑手势命令的处理方法的流程图。如图2所述,本发明的对上拉或上滑手势命令的处理方法包括:

s21:在视图容器中布局一个尾视图和至少任意一个视图,所述尾视图和所述至少一个视图的大小为自定义值。

该步骤的实现与第一实施例的步骤s1相似,所述尾视图和所述至少一个视图的大小(宽度和高度)可以根据具体应用场景的不同而采用自定义值。优选的,所述尾视图的宽度为终端屏幕的显示界面的宽度,其高度为自定义值,所述至少1个视图的大小与终端屏幕的显示区域大小相同或略小。实现方法也可以类似,例如,首先在viewgroup的onmeasure()回调方法中计算和设置footerview和anyview的宽度和高度。可以用下面的方法进行计算和设置:view.measure(measurespec.makemeasurespec(宽度值),measurespec.makemeasurespec(高度值))。

然后再在viewgroup的onlayout()回调方法中布局footerview和anyview的位置。使用的方法同样可以是:

view.layout(left,top,width,height)

但注意,假设anyview的left=0,top=0,width=屏幕的显示界面的宽度,height=屏幕的显示区域的高度,

则可以推算出footerview的left=0,top=正值,例如是anyview的高度值+footerview的自定义高度值,这样能保证footerview和anyview在屏幕上显示垂直布局,并且footerview在anyview之下,即所述尾视图垂直位于所述至少一个视图之下,且默认设置footerview不可见。

s22:所述视图容器截获上拉或上滑手势事件,当所述至少一个视图不能跟随上拉或上滑手势而向上滚动时,根据此时实时获取的用户在屏幕上上拉或上滑的距离数值使尾视图的高度动态增加相应的数值。

该步骤的实现与第一实施例的步骤s2相似,当用户在终端屏幕上作出上拉或上滑手势,安卓系统通过将上拉或上滑手势事件层层传递,所述视图容器通过ontouchevent()所述截获上拉或上滑手势事件,根据上拉或上滑手势事件判断是否使所述至少一个视图跟随上拉或上滑手势而向上滚动,当所述至少一个视图为固定不可滚动,或者滚动到规定距离后不能再继续滚动时,也就是说,所述至少一个视图不能跟随上拉或上滑手势而向上滚动包括:所述至少一个视图为固定不可滚动,或者所述至少一个视图滚动到规定距离后不能再继续滚动,根据此时实时获取的用户在屏幕上进行上拉或上滑的移动距离数值使尾视图的高度动态增加相应的数值,例如假设此时用户在屏幕上上拉或上滑了100像素距离,则使尾视图的高度动态增加100像素。

对于用户在终端屏幕上作出上拉或上滑手势的判定可以使用本领域公知的技术,这里不再赘述。

s23:根据所述尾视图的高度变化不同所述视图容器向其管理的视图分发不同任务。

该步骤的实现与第一实施例的步骤s3相似,区别仅仅是将头视图换成了尾视图。因此,这里就不再展开讲述。

所述根据尾视图的高度变化不同所述视图容器向其管理的视图分发不同任务的步骤包括但不限于:

第1任务:随着所述尾视图高度的实时变化而在屏幕上动态添加显示一个动画效果,并且在用户松手结束上拉或上滑手势命令时该第1任务结束;和/或

第2任务:当所述尾视图高度大于等于第一预设阈值时所述尾视图显示文本、和/或图片、和/或视频内容,并且在用户松手结束上拉或上滑手势命令时该第2任务结束;和/或

第3任务:当所述尾视图高度大于等于第二预设阈值时所述尾视图显示用于表示松开执行刷新的提示,此时用户松手结束上拉或上滑手势,则所述视图容器向其管理的视图统一分发刷新任务。

同样的,在第1任务中,可以在屏幕的任意位置上,优选在尾视图位置上,出现一个动画效果,例如不停奔跑的小马。

在第2任务中,所述尾视图同样即可以显示文本信息、图片信息、或者视频信息,也可以同时显示这3种类型信息的任意组合。

在第3任务中,预先设定的第二阈值不同于第一阈值。

另外,第一实施例中关于“和/或”的意思解释在这里描述的第二实施例中同样适用,不再重复描述。

在一个优选实施例中,还包括:当所述分发的任务结束后,使所述尾视图的高度恢复至初始值。例如所述尾视图的高度变回0,即所述尾视图隐藏起来。

在一个优选实施例中,所述第3任务还包括:在用户没有松手结束上拉或上滑手势之前,所述尾视图根据其高度值的不同而显示不同的提示信息。例如,所述尾视图根据其高度值不同,可以分别显示出文本“下拉刷新”、“刚刚更新”、“松开刷新”、“返回首页”或其他提示信息等。

本发明第二实施例提供的一种对上拉或上滑手势命令的处理方法,通过将本属于视图列表里的尾视图从视图列表中挪出来装入到视图容器viewgroup中,当用户在终端屏幕上发出上拉或上滑手势命令时,视图容器viewgroup控制尾视图跟随上拉或上滑手势命令而变化,进而分发对目标对象的任务执行。由于本方法利用了视图容器viewgroup的任务分发机制,使得对任务执行的响应时间大大加快;创造性地将本属于视图列表里的尾视图从视图列表中挪出来装入到视图容器viewgroup中,可以极大拓展了上拉手势命令的应用场景,而不局限于数据刷新、不局限于以视图列表显示的页面等,用户触摸到的视图控件不仅可以是固定不可滚动的,也可以是可滚动的;当用户触摸到的视图控件是可滚动时,在视图控件滚动到系统规定距离后不能再继续滚动则视图容器viewgroup控制尾视图跟随上拉或上滑手势命令而变化,进而分发对目标对象的任务执行。

另外,本领域技术人员都知道,可以将第一实施例和第二实施例组合使用,这样无论用户做出下拉或下滑手势还是上拉或上滑手势,都可以实现让所述视图容器向其管理的视图分发不同任务,即本发明还可以提供一种对手势命令的处理方法,其中:当用户在终端屏幕上做出下拉或下滑手势命令时,执行第一实施例及其优选实施例所述的方法;当用户在终端屏幕上做出上拉或上滑手势命令时,执行第二实施例及其优选实施例所述的方法。这里不过多重复描述。

图3是本发明第三实施例提供了一种对下拉或下滑手势命令的处理装置的示意性框图。如图3所示,本发明的对下拉或下滑手势命令的处理装置包括一个视图容器模块,其中该视图容器模块包括:

视图设置模块,用于在视图容器中布局一个头视图和至少任意一个视图,其中所述头视图和所述至少一个视图的大小为自定义值;

下拉或下滑手势事件处理模块,用于截获下拉或下滑手势事件,当所述至少一个视图不能跟随下拉或下滑手势而向下滚动时,根据此时实时获取的用户在屏幕上下拉或下滑的距离数值使头视图的高度动态增加相应的数值;

任务分发模块,用于根据所述头视图的高度变化不同,使所述视图容器向其管理的视图分发不同任务。

其中,所述头视图垂直位于所述至少一个视图之上。

其中,所述至少一个视图不能跟随下拉或下滑手势而向下滚动包括:所述至少一个视图为固定不可滚动,或者所述至少一个视图滚动到规定距离后不能再继续滚动。

其中,所述任务分发模块根据所述头视图的高度变化不同,使所述视图容器向其管理的视图分发不同任务包括但不限于:

第1任务:随着所述头视图高度的实时变化而在屏幕上动态添加显示一个动画效果,并且在用户松手结束下拉或下滑手势命令时该第1任务结束;和/或

第2任务:当所述头视图高度大于等于第一预设阈值时所述头视图显示文本、和/或图片、和/或视频内容,并且在用户松手结束下拉或下滑手势命令时该第2任务结束;和/或

第3任务:当所述头视图高度大于等于第二预设阈值时所述头视图显示用于表示松开执行刷新的提示,此时用户松手结束下拉或下滑手势,则所述视图容器向其管理的视图统一分发刷新任务。

其中,所述第3任务还包括:在用户没有松手结束下拉或下滑手势之前,所述头视图根据其高度值的不同而显示不同的提示信息。

其中,所述装置还包括:

头视图高度重置模块,用于当所述分发的任务结束后,使所述头视图的高度恢复至初始值。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述第三实施例描述的装置的具体工作过程,可以参考前述第一实施例中描述的对应过程,前述第一方法实施例中列举的例子和相关描述,同样适用于解释该第三实施例描述的装置的工作过程,在此不再重复描述。

本发明第三实施例提供的一种对下拉或下滑手势命令的处理装置,通过将本属于视图列表里的头视图从视图列表中挪出来装入到视图容器viewgroup中,当用户在终端屏幕上发出下拉或下滑手势命令时,视图容器viewgroup控制头视图跟随下拉或下滑手势命令而变化,进而分发对目标对象的任务执行。由于本方法利用了视图容器viewgroup的任务分发机制,使得对任务执行的响应时间大大加快;创造性地将本属于视图列表里的头视图从视图列表中挪出来装入到视图容器viewgroup中,可以极大拓展了下拉手势命令的应用场景,而不局限于数据刷新、不局限于以视图列表显示的页面、下拉手势在触摸屏的位置也不再受限制,用户触摸到的视图控件不仅可以是固定不可滚动的,也可以是可滚动的;当用户触摸到的视图控件是可滚动时,在视图控件滚动到系统规定距离后不能再继续滚动则视图容器viewgroup控制头视图跟随下拉或下滑手势命令而变化,进而分发对目标对象的任务执行。

图4是本发明第四实施例提供了一种对上拉或上滑手势命令的处理装置的示意性框图。如图4所示,本发明的对上拉或上滑手势命令的处理装置包括一个视图容器模块,其中该视图容器模块包括:

视图设置模块,用于在视图容器中布局一个尾视图和至少任意一个视图,所述尾视图和所述至少一个视图的大小为自定义值;

上拉或上滑手势事件处理模块,用于截获上拉或上滑手势事件,当所述至少一个视图不能跟随上拉或上滑手势而向上滚动时,根据此时实时获取的用户在屏幕上上拉或上滑的距离数值使尾视图的高度动态增加相应的数值;

任务分发模块,用于根据所述尾视图的高度变化不同,使所述视图容器向其管理的视图分发不同任务。

其中,所述尾视图垂直位于所述至少一个视图之下。

其中,所述至少一个视图不能跟随上拉或上滑手势而向上滚动包括:所述至少一个视图为固定不可滚动,或者所述至少一个视图滚动到规定距离后不能再继续滚动。

其中,所述任务分发模块根据所述尾视图的高度变化不同,使所述视图容器向其管理的视图分发不同任务包括但不限于:

第1任务:随着所述尾视图高度的实时变化而在屏幕上动态添加显示一个动画效果,并且在用户松手结束上拉或上滑手势命令时该第1任务结束;和/或

第2任务:当所述尾视图高度大于等于第一预设阈值时所述尾视图显示文本、和/或图片、和/或视频内容,并且在用户松手结束上拉或上滑手势命令时该第2任务结束;和/或

第3任务:当所述尾视图高度大于等于第二预设阈值时所述尾视图显示用于表示松开执行刷新的提示,此时用户松手结束上拉或上滑手势,则所述视图容器向其管理的视图统一分发刷新任务。

其中,所述第3任务还包括:在用户没有松手结束上拉或上滑手势之前,所述尾视图根据其高度值的不同而显示不同的提示信息。

其中,所述装置还包括:

尾视图高度重置模块,用于当所述分发的任务结束后,使所述尾视图的高度恢复至初始值。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述第四实施例描述的装置的具体工作过程,可以参考前述第二实施例中描述的对应过程,前述第二方法实施例中列举的例子和相关描述,同样适用于解释该第四实施例描述的装置的工作过程,在此不再重复描述。

本发明第四实施例提供的一种对上拉或上滑手势命令的处理装置,通过将本属于视图列表里的尾视图从视图列表中挪出来装入到视图容器viewgroup中,当用户在终端屏幕上发出上拉或上滑手势命令时,视图容器viewgroup控制尾视图跟随上拉或上滑手势命令而变化,进而分发对目标对象的任务执行。由于本方法利用了视图容器viewgroup的任务分发机制,使得对任务执行的响应时间大大加快;创造性地将本属于视图列表里的尾视图从视图列表中挪出来装入到视图容器viewgroup中,可以极大拓展了上拉手势命令的应用场景,而不局限于数据刷新、不局限于以视图列表显示的页面等,用户触摸到的视图控件不仅可以是固定不可滚动的,也可以是可滚动的;当用户触摸到的视图控件是可滚动时,在视图控件滚动到系统规定距离后不能再继续滚动则视图容器viewgroup控制尾视图跟随上拉或上滑手势命令而变化,进而分发对目标对象的任务执行。

另外,本领域技术人员都知道,可以将第三实施例和第四实施例组合使用,这样无论用户做出下拉或下滑手势还是上拉或上滑手势,都可以实现让所述视图容器向其管理的视图分发不同任务,即,本发明还可以提供一种对手势命令的处理装置,其包括:第三实施例所述的装置,和第四实施例所述的装置。这里不过多重复描述。

本发明实施例所提供的对手势命令的处理方法的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。

这样,本发明还可以提供一种存储设备,其中存储有多条指令,所述指令适于由处理器加载并执行第一实施例及其优选实施例所述的方法,或者执行第二实施例及其优选实施例所述的方法。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,智能平板电脑,智能手机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom)、随机存取存储器(ram)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

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