元素列表的刷新控制方法、装置、存储介质及电子设备与流程

文档序号:30242771发布日期:2022-06-02 00:09阅读:80来源:国知局
元素列表的刷新控制方法、装置、存储介质及电子设备与流程

1.本公开涉及计算机技术领域,尤其是一种元素列表的刷新控制方法、装置、计算机可读存储介质、计算机程序产品及电子设备。


背景技术:

2.目前,很多应用程序都具有下拉刷新功能,通常,各种应用程序下拉刷新的位置都是从元素列表的顶部开始下拉刷新。例如,在设计安卓操作系统中的应用程序时,可以通过在recyclerview(即元素列表)外部包裹一层布局来实现的。
3.现有的安卓系统官方提供了一套嵌套滑动的布局方案,即coordinatorlayout+appbarlayout+behavior。该方案可以将recyclerview包裹在coordinatorlayout内,列表头部的操作通过appbarlayout实现。通过nestedscrollingparent,nestedscrollingchild接口解决滑动冲突。


技术实现要素:

4.本公开的实施例提供了一种元素列表的刷新控制方法、装置、计算机可读存储介质、电子设备及计算机程序产品。
5.本公开的实施例提供了一种元素列表的刷新控制方法,该方法包括:确定用户当前对屏幕上显示的元素列表的滑动操作的操作点是否向第一方向滑动;响应于操作点第一方向滑动,确定元素列表中的目标元素是否处于目标位置;响应于目标元素处于目标位置,基于操作点向第一方向的滑动距离,调整元素列表中的刷新演示元素的显示高度由初始高度逐渐增大;响应于滑动操作结束且操作点向第一方向的滑动距离满足滑动距离条件,触发对元素列表的刷新操作。
6.在一些实施例中,在触发对元素列表的刷新操作之后,该方法还包括:调整刷新演示元素的显示高度减小至初始高度。
7.在一些实施例中,该方法还包括:在调整刷新演示元素的显示高度的过程中,在屏幕上的刷新演示元素的对应位置显示预设的刷新演示画面。
8.在一些实施例中,在调整刷新演示元素的显示高度的过程中,在屏幕上的刷新演示元素的对应位置显示预设的刷新演示画面,包括:在刷新演示元素的显示高度增大的过程中,在刷新演示元素的对应位置显示第一刷新演示画面;在刷新演示元素的显示高度减小的过程中,在刷新演示元素的对应位置显示第二刷新演示画面。
9.在一些实施例中,该方法还包括:响应于滑动操作结束且操作点向第一方向的滑动距离不满足滑动距离条件,调整刷新演示元素的显示高度减小至初始高度。
10.在一些实施例中,确定用户当前对屏幕上显示的元素列表的滑动操作的操作点是否向第一方向滑动,包括:在屏幕上确定操作点的第一滑动距离和第二滑动距离,其中,第一滑动距离是第一轴向上的滑动距离,第二滑动距离是第二轴向上的滑动距离;响应于确定第一滑动距离大于第二滑动距离,且所述操作点映射到所述第一轴向上的点的移动方向
为第一方向,并确定操作点向第一方向滑动。
11.在一些实施例中,该方法还包括:响应于确定第一滑动距离小于第二滑动距离,基于操作点所在的位置,对元素列表执行向第二方向滑动的滑动操作,其中,第二方向为操作点映射到第二轴向上的点的移动方向。
12.在一些实施例中,该方法还包括:响应于确定操作点向第三方向滑动,对元素列表执行向第三方向滑动的滑动操作,其中,第三方向是第一方向的反方向;响应于确定操作点向第一方向滑动且目标元素不处于目标位置,对元素列表执行向第一方向滑动的滑动操作。
13.根据本公开实施例的另一个方面,提供了一种元素列表的刷新控制装置,该装置包括:第一确定模块,用于确定用户当前对屏幕上显示的元素列表的滑动操作的操作点是否向第一方向滑动;第二确定模块,用于响应于操作点第一方向滑动,确定元素列表中的目标元素是否处于目标位置;第一调整模块,用于响应于目标元素处于目标位置,基于操作点向第一方向的滑动距离,调整元素列表中的刷新演示元素的显示高度由初始高度逐渐增大;第一刷新模块,用于响应于滑动操作结束且操作点向第一方向的滑动距离满足滑动距离条件,触发对元素列表的刷新操作。
14.根据本公开实施例的另一个方面,提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序用于执行上述元素列表的刷新控制方法。
15.根据本公开实施例的另一个方面,提供了一种电子设备,电子设备包括:处理器;用于存储处理器可执行指令的存储器;处理器,用于从存储器中读取可执行指令,并执行指令以实现上述元素列表的刷新控制方法。
16.根据本公开实施例的另一个方面,提供了一种计算机程序产品,包括计算机程序/指令,计算机程序/指令被处理器执行时实现上述元素列表的刷新控制方法的步骤。
17.基于本公开上述实施例提供的元素列表的刷新控制方法、装置、计算机可读存储介质、电子设备及计算机程序产品,通过在确定对元素列表的滑动操作的操作点向第一方向滑动时,确定元素列表中的目标元素是否处于目标位置,若处于目标位置,基于操作点向第一方向的滑动距离,调整元素列表中的刷新演示元素的显示高度由初始高度逐渐增大,在滑动操作结束且滑动距离满足滑动距离条件时,触发对元素列表的刷新操作,从而实现了在元素列表中的任意位置设置滑动刷新的效果,丰富了刷新演示的方式,使列表刷新演示的灵活性更高,可以满足不同的列表设计需求。此外,本公开实施例直接在元素列表中指定刷新演示元素,无需利用现有技术中需要将元素列表包裹进一套布局中实现刷新演示,在列表的布局复杂的情况下,相比现有技术,本公开实施例无需解决复杂布局的滑动冲突,降低了元素列表布局的设计难度,减少了元素列表设计的工作量,提高了元素列表布局设计的效率。
18.下面通过附图和实施例,对本公开的技术方案做进一步的详细描述。
附图说明
19.通过结合附图对本公开实施例进行更详细的描述,本公开的上述以及其他目的、特征和优势将变得更加明显。附图用来提供对本公开实施例的进一步理解,并且构成说明书的一部分,与本公开实施例一起用于解释本公开,并不构成对本公开的限制。在附图中,
相同的参考标号通常代表相同部件或步骤。
20.图1是本公开所适用的系统图。
21.图2是本公开一示例性实施例提供的元素列表的刷新控制方法的流程示意图。
22.图3是本公开一示例性实施例提供的数据源与元素列表的对应关系的示意图。
23.图4a是现有技术中的元素列表布局的示意图。
24.图4b是本公开一示例性实施例提供的元素列表布局的示意图。
25.图5是本公开另一示例性实施例提供的元素列表的刷新控制方法的流程示意图。
26.图6是本公开另一示例性实施例提供的元素列表的刷新控制方法的流程示意图。
27.图7是本公开一示例性实施例提供的元素列表的刷新控制装置的结构示意图。
28.图8是本公开另一示例性实施例提供的元素列表的刷新控制装置的结构示意图。
29.图9是本公开一示例性实施例提供的电子设备的结构图。
具体实施方式
30.下面,将参考附图详细地描述根据本公开的示例实施例。显然,所描述的实施例仅仅是本公开的一部分实施例,而不是本公开的全部实施例,应理解,本公开不受这里描述的示例实施例的限制。
31.应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
32.本领域技术人员可以理解,本公开实施例中的“第一”、“第二”等术语仅用于区别不同步骤、设备或模块等,既不代表任何特定技术含义,也不表示它们之间的必然逻辑顺序。
33.还应理解,在本公开实施例中,“多个”可以指两个或两个以上,“至少一个”可以指一个、两个或两个以上。
34.还应理解,对于本公开实施例中提及的任一部件、数据或结构,在没有明确限定或者在前后文给出相反启示的情况下,一般可以理解为一个或多个。
35.另外,本公开中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本公开中字符“/”,一般表示前后关联对象是一种“或”的关系。
36.还应理解,本公开对各个实施例的描述着重强调各个实施例之间的不同之处,其相同或相似之处可以相互参考,为了简洁,不再一一赘述。
37.同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
38.以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。
39.对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
40.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
41.本公开实施例可以应用于终端设备、计算机系统、服务器等电子设备,其可与众多
其它通用或专用计算系统环境或配置一起操作。适于与终端设备、计算机系统、服务器等电子设备一起使用的众所周知的终端设备、计算系统、环境和/或配置的例子包括但不限于:个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统、大型计算机系统和包括上述任何系统的分布式云计算技术环境,等等。
42.终端设备、计算机系统、服务器等电子设备可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑、数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机系统/服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。
43.申请概述
44.现有技术采用的滑动列表布局设计方案,下拉刷新操作的演示画面通常只能出现在顶端,无法满足多样化的设计需求。并且,现有的滑动列表布局设计方案的实现方式较复杂。例如,安卓系统中常用的coordinatorlayout+appbarlayout+behavior并包裹recyclerview的方案,比较适用于列表内容的布局简单、功能较少的情形,而对于诸如列表里又嵌套了一个可滑动的列表这种复杂设计,可能会产生滑动冲突,为了让用户感受到滑动的多个列表是一个连贯的列表,需要解决滑动事件分配、filing(惯性滑动)事件分配等特殊情况,其实现难度较大,实现效率较低。
45.示例性系统
46.图1示出了可以应用本公开的实施例的元素列表的刷新控制方法或元素列表的刷新控制装置的示例性系统架构100。
47.如图1所示,系统架构100可以包括终端设备101,网络102和服务器103。网络102用于在终端设备101和服务器103之间提供通信链路的介质。网络102可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
48.用户可以使用终端设备101通过网络102与服务器103交互,以接收或发送消息等。终端设备101上可以安装有各种通讯客户端应用,例如搜索类应用、网页浏览器应用、购物类应用、即时通信工具等。
49.终端设备101可以是各种包含屏幕的电子设备,包括但不限于诸如滑动电话、笔记本电脑、数字广播接收器、pda(个人数字助理)、pad(平板电脑)、pmp(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字tv、台式计算机等等的固定终端。
50.服务器103可以是提供各种服务的服务器,例如对终端设备101上安装的各种应用提供支持的后台服务器。后台服务器可以向终端设备101发送用于展示的元素列表中的内容。
51.需要说明的是,本公开的实施例所提供的元素列表的刷新控制方法通常由终端设备101执行,相应地,元素列表的刷新控制装置通常设置于终端设备101中。
52.应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。在元素列表中的内容不需要从远程获取
的情况下,上述系统架构可以不包括网络和服务器,只包括终端设备。
53.示例性方法
54.图2是本公开一示例性实施例提供的元素列表的刷新控制方法的流程示意图。本实施例可应用在电子设备(如图1所示的终端设备101)上,如图2所示,该方法包括如下步骤:
55.步骤201,确定用户当前对屏幕上显示的元素列表的滑动操作的操作点是否向第一方向滑动。
56.在本实施例中,电子设备可以确定用户当前对屏幕上显示的元素列表的滑动操作的操作点是否向第一方向滑动。其中,第一方向可以是任意的方向,例如在屏幕上由上到下的方向为第一方向,或由下到上的方向也可以为第一方向。
57.元素列表为用于在屏幕上展示的各种内容的集合所形成的列表。元素列表中的内容可以包括各种,例如文字、图像、视频等。滑动操作用于控制元素列表整体或部分向某个方向滑动。控制滑动操作可以由操作点的移动完成,操作点可以是用户在屏幕上进行滑动操作时映射到屏幕上的点。例如,用户手指在屏幕上滑动时的触摸点为操作点;或用户通过按下鼠标同时拖动鼠标进行滑动操作时,映射到屏幕上的光标所在的点为操作点。
58.作为示例,设第一方向为由上到下的方向,若用户通过手指触摸或鼠标点击等方式控制操作点由上到下移动,且操作点的横向位移处于预设位移范围内,则可以确定操作点向第一方向滑动。
59.步骤202,响应于操作点向第一方向滑动,确定元素列表中的目标元素是否处于目标位置。
60.在本实施例中,电子设备可以在确定操作点向第一方向滑动时,确定元素列表中的目标元素是否处于目标位置。其中,目标元素为元素列表中任意指定的元素,例如,目标元素可以为元素列表中位于顶部的元素,或者,还可以是位于底部的元素。
61.目标位置可以是任意指定的位置。例如,目标位置可以是屏幕的顶部。当目标元素为元素列表中位于顶部的元素时,若包含目标元素的轮廓的上边线与屏幕顶部重合,可以确定目标元素处于目标位置。
62.步骤203,响应于目标元素处于目标位置,基于操作点向第一方向的滑动距离,调整元素列表中的刷新演示元素的显示高度由初始高度逐渐增大。
63.在本实施例中,电子设备可以在确定目标元素处于目标位置时,基于操作点向第一方向的滑动距离,调整元素列表中的刷新演示元素的显示高度由初始高度逐渐增大。
64.其中,刷新演示元素为用于演示刷新操作的元素,刷新演示元素可以是预先指定的任意位置的元素。例如,刷新演示元素可以是元素列表中的第二个元素,即位于顶部元素之下的第一个元素。刷新演示元素具有初始高度,通常,初始高度可以为0,即用户没有通过滑动操作进行刷新时,在屏幕上不显示刷新演示元素。当执行本步骤时,随着操作点的移动,刷新演示元素显示在屏幕上同时高度由0逐渐增大。
65.通常,元素列表中的每个元素分别对应于预设的数据源中的某个数据项,可以预先在数据源中指定刷新演示的数据项。元素列表还具有对应的适配器,适配器用于对将每个元素对应的数据项进行渲染,在屏幕上的对应位置展示。如图3所示,数据源301中的数据项与元素列表302中的列表项(即元素)一一对应,每个列表项具有对应的展示样式。数据项
b为下拉刷新项,对应于元素列表中的列表项二(下拉刷新样式),当需要对元素列表刷新时,列表项二展示下拉刷新样式。列表项b的下拉刷新样式通过适配器303设置。
66.步骤204,响应于滑动操作结束且操作点向第一方向的滑动距离满足滑动距离条件,触发对元素列表的刷新操作。
67.在本实施例中,电子设备可以响应于滑动操作结束且操作点向第一方向的滑动距离满足滑动距离条件,触发对元素列表的刷新操作。
68.电子设备可以在检测到用户执行了某种动作,从而确定滑动操作结束,例如当用户的手指不再与屏幕接触,或释放鼠标按键时,确定滑动操作结束。
69.滑动距离条件可以是基于滑动距离设置的触发条件,例如,当滑动距离大于等于预设距离阈值时,确定满足滑动距离条件。
70.刷新操作的对象通常为整个元素列表。在一些情况下,也可以预先设置刷新操作的对象,例如,在应用程序关闭前,只刷新除位于元素列表顶部的元素以外的其他元素。
71.本公开的上述实施例提供的方法,通过在确定对元素列表的滑动操作的操作点向第一方向滑动时,确定元素列表中的目标元素是否处于目标位置,若处于目标位置,基于操作点向第一方向的滑动距离,调整元素列表中的刷新演示元素的显示高度由初始高度逐渐增大,在滑动操作结束且滑动距离满足滑动距离条件时,触发对元素列表的刷新操作,从而实现了在元素列表中的任意位置设置滑动刷新的效果,丰富了刷新演示的方式,使列表刷新演示的灵活性更高,可以满足不同的列表设计需求。此外,本公开实施例直接在元素列表中指定刷新演示元素,无需利用现有技术中需要将元素列表包裹进一套布局中实现刷新演示,在列表的布局复杂的情况下,相比现有技术,本公开实施例无需解决复杂布局的滑动冲突,降低了元素列表布局的设计难度,减少了元素列表设计的工作量,提高了元素列表布局设计的效率。
72.参考图4a,其示出了现有的安卓系统下的下拉刷新的元素列表布局的实现方式。如图4a所示,recyclerview(即元素列表)包括外部recyclerview(如图中4011所示)和内部嵌套的recyclerview(如图中40111所示)。内部嵌套的recyclerview包括子列表1、子列表2和子列表3,每个子列表包括多个嵌套列表项。recyclerview又通过swiperefreshlayout嵌套在coordinatorlayout(如图中401所示)中,coordinatorlayout包括appbarlayout,用于对列表头部(如图中4012所示)的元素进行设置,对下拉刷新的演示的配置也通过appbarlayout实现。
73.参考图4b,示出了本公开实施例提供的一个元素列表的示意图。如图4b所示,recyclerview(即元素列表)包括外部recyclerview(如图中402所示)和内部嵌套的recyclerview(如图中4021所示),内部嵌套的recyclerview同样包括子列表1、子列表2和子列表3,每个子列表包括多个嵌套列表项。列表项二为初始高度为0的刷新演示元素(用于下拉刷新的演示)。
74.对比图4a和图4b可知,现有的元素列表布局方案,其结构复杂,解决滑动冲突时需要较复杂的配置。而本公开实施例提供的元素列表布局方案,只需直接配置元素列表和内部嵌套的子列表,大大降低了布局设计的复杂性。
75.在一些可选的实现方式中,在步骤204之后,该方法还可以包括:
76.调整刷新演示元素的显示高度减小至初始高度。
77.通常,将刷新演示元素的显示高度减小的过程设置为逐渐减小的过程。初始高度可以为0,即刷新演示元素在屏幕上的展示逐渐消失。
78.本实现方式通过在触发刷新操作之后将刷新演示元素的显示高度减小至初始高度,可以为下次刷新操作提供基础,并向用户动态呈现完整的刷新过程,使列表刷新演示的灵活性更高。
79.在一些可选的实现方式中,该方法还包括:
80.在调整刷新演示元素的显示高度的过程中,在屏幕上的刷新演示元素的对应位置显示预设的刷新演示画面。
81.其中,刷新演示元素的显示高度的调整过程可以包括高度增大的过程和高度减小的过程。通常,刷新演示画面所需的数据可以存储在与刷新演示元素对应的数据项(例如图3所示的数据项b)中。刷新演示画面的内容可以包括各种信息,例如图像、文字、符号等。通常,刷新演示画面可以包括动图,从而使刷新演示的过程更生动流畅。
82.本实现方式通过在调整刷新演示元素的显示高度的过程中,在屏幕上展示刷新演示画面,可以使刷新演示的内容更丰富,有助于向用户更直观地展示刷新的过程,降低用户误操作的概率,提高用户操作的效率。
83.在一些可选的实现方式中,电子设备可以通过执行如下步骤实现在屏幕上的刷新演示元素的对应位置显示刷新演示画面:
84.在刷新演示元素的显示高度增大的过程中,在刷新演示元素的对应位置显示第一刷新演示画面;在刷新演示元素的显示高度减小的过程中,在刷新演示元素的对应位置显示第二刷新演示画面。
85.作为示例,第一刷新演示画面可以是展示某个图标或文字逐渐增大的画面,该画面用于提示用户即将出发刷新操作;第二刷新演示画面可以是展示某个图标或文字逐渐减小的画面,该画面用于提示用户正在进行刷新操作。
86.本实现方式通过在刷新演示元素的显示高度变化时分别展示第一刷新演示画面和第二刷新演示画面,可以向用户更直观地展示即将刷新和正在刷新的过程,降低用户误操作的概率,提高用户操作的准确性。
87.在一些可选的实现方式中,该方法还包括:
88.响应于滑动操作结束且操作点向第一方向的滑动距离不满足滑动距离条件,调整刷新演示元素的显示高度减小至初始高度。
89.作为示例,当用户的手指离开屏幕时,滑动距离小于预设距离阈值,则将刷新演示元素的显示高度还原,不执行刷新操作。
90.如图5所示,其示出了本实施例的一个流程图,该方法可以包括如下步骤:
91.步骤501,确定用户当前对屏幕上显示的元素列表的滑动操作的操作点是否向第一方向滑动。
92.如果是,执行步骤502。
93.步骤502,确定元素列表中的目标元素是否处于目标位置。
94.如果是,执行步骤503。
95.步骤503,基于操作点向第一方向的滑动距离,调整元素列表中的刷新演示元素的显示高度由初始高度逐渐增大。
96.步骤504,确定滑动操作是否结束。
97.如果是,执行步骤505。
98.步骤505,确定操作点向第一方向的滑动距离是否满足滑动距离条件。
99.如果是,执行步骤506,否则执行步骤507。
100.步骤506,触发对元素列表的刷新操作。
101.步骤507,调整刷新演示元素的显示高度减小至初始高度。
102.上述步骤501-步骤506的执行过程与上述步骤201-步骤204相同,这里不再赘述。步骤507即本实施例提供的步骤。
103.本实现方式可以实现在用户进行滑动操作时,若不想进行刷新操作,可以通过主动移动操作点的位置将滑动距离缩短并结束滑动操作来实现,或者用户在滑动操作的过程中误操作导致触发了在屏幕上展示刷新演示元素,但由于不满足滑动距离条件而不触发刷新操作,从而有助于降低用户误操作的概率,避免误操作造成的软硬件资源(例如网络资源、处理器资源等)浪费。
104.在一些可选的实现方式中,如图6所示,步骤201可以包括:
105.步骤2011,在屏幕上确定操作点的第一滑动距离和第二滑动距离。
106.其中,第一滑动距离是第一轴向上的滑动距离,第二滑动距离是第二轴向上的滑动距离。作为示例,第一轴向可以为在屏幕上由上到下或右下到上的方向,即纵向的方向。第二轴向可以为由左到右或由右到左的方向,即横向方向。电子设备可以在操作点移动的过程中,实时确定纵向滑动距离(第一滑动距离)和横向滑动距离(第二滑动距离)。
107.通常,屏幕的左上角为坐标原点,x轴的正方向向右,y轴的正方向向下,通过确定操作点的y坐标分量的变化量,可以得到第一滑动距离,通过确定操作点的x坐标分量的变化量,可以得到第二滑动距离。
108.步骤2012,响应于确定第一滑动距离大于第二滑动距离,且操作点映射到第一轴向上的点的移动方向为第一方向,确定操作点向第一方向滑动。
109.例如,第一方向设置为屏幕纵向向下的方向,当用户的手指在屏幕上纵向向下滑动的距离(即手指在屏幕上的触摸点映射到第一轴向上的点的移动距离)大于横向滑动的距离(即手指在屏幕上的触摸点映射到第二轴向上的点的移动距离)时,确定操作点向第一方向滑动。
110.本实现方式通过比较第一滑动距离和第二滑动距离,可以更准确地判断操作点是否向第一方向滑动,进而提高了触发刷新操作的准确性。
111.在一些可选的实现方式中,方法还包括:
112.响应于确定第一滑动距离小于第二滑动距离,基于操作点所在的位置,对元素列表执行向第二方向滑动的滑动操作,其中,第二方向为操作点映射到第二轴向上的点的移动方向。例如,第二方向为屏幕的横向方向,可以是操作点由左向右或由右向左的移动方向。
113.具体地,如图4b所示,元素列表中可以包括嵌套的子列表,若操作点所在的位置为子列表的显示范围,则可以对子列表执行横向的滑动操作。或者,若操作点所在的位置为字列表的显示范围以外的区域,或元素列表不包含子列表,则横向的滑动操作无效,或横向的滑动操作控制整个元素列表横向移动。
114.本实现方式通过在第一滑动距离小于第二滑动距离的情况下,对元素列表执行向第二方向滑动的滑动操作,可以有效避免当存在不同方向的滑动操作时产生的滑动冲突,减少了在设计元素列表的布局时处理滑动冲突的工作量,提高了设计元素列表的效率,同时提高了用户进行滑动操作的准确性。
115.在一些可选的实现方式中,该方法还可以包括:
116.响应于确定操作点向第三方向滑动,对元素列表执行向第三方向滑动的滑动操作。其中,第三方向是第一方向的反方向。
117.作为示例,当第一方向是纵向向下的方向时,第三方向为纵向向上的方向。第三方向滑动的滑动操作通常为控制元素列表整体或部分(例如控制子列表滑动的情况)向第三方向滑动。
118.响应于确定操作点向第一方向滑动且目标元素不处于目标位置,对元素列表执行向第一方向滑动的滑动操作。
119.作为示例,设目标位置为屏幕顶部,当目标元素为元素列表中位于顶部的元素时,若包含目标元素的轮廓的上边线与屏幕顶部不重合,可以确定目标元素不处于目标位置,此时随着操作点的滑动,元素列表向第一方向(例如纵向向下)滑动。
120.本实现方式提供的滑动操作方案,实现了对元素列表更丰富的滑动操作,进一步提高了对元素列表进行滑动操作的灵活性,有助于提高用户操作的多样性。
121.示例性装置
122.图7是本公开一示例性实施例提供的元素列表的刷新控制装置的结构示意图。本实施例可应用在电子设备上,如图7所示,元素列表的刷新控制装置包括:第一确定模块701,用于确定用户当前对屏幕上显示的元素列表的滑动操作的操作点是否向第一方向滑动;第二确定模块702,用于响应于操作点第一方向滑动,确定元素列表中的目标元素是否处于目标位置;第一调整模块703,用于响应于目标元素处于目标位置,基于操作点向第一方向的滑动距离,调整元素列表中的刷新演示元素的显示高度由初始高度逐渐增大;第一刷新模块704,用于响应于滑动操作结束且操作点向第一方向的滑动距离满足滑动距离条件,触发对元素列表的刷新操作。
123.在本实施例中,第一确定模块701可以确定用户当前对屏幕上显示的元素列表的滑动操作的操作点是否向第一方向滑动。其中,第一方向可以是任意的方向,例如在屏幕上由上到下的方向为第一方向,或由下到上的方向也可以为第一方向。
124.元素列表为用于在屏幕上展示的各种内容的集合所形成的列表。元素列表中的内容可以包括各种,例如文字、图像、视频等。滑动操作用于控制元素列表整体或部分向某个方向滑动。控制滑动操作可以由操作点的移动完成,操作点可以是用户在屏幕上进行滑动操作时映射到屏幕上的点。例如,用户手指在屏幕上滑动时的触摸点为操作点;或用户通过按下鼠标同时拖动鼠标进行滑动操作时,映射到屏幕上的光标所在的点为操作点。
125.作为示例,设第一方向为由上到下的方向,若用户通过手指触摸或鼠标点击等方式控制操作点由上到下移动,且操作点的横向位移处于预设位移范围内,则可以确定操作点向第一方向滑动。
126.在本实施例中,第二确定模块702可以在确定操作点向第一方向滑动时,确定元素列表中的目标元素是否处于目标位置。其中,目标元素为元素列表中任意指定的元素,例
如,目标元素可以为元素列表中位于顶部的元素,或者,还可以是位于底部的元素。
127.目标位置可以是任意指定的位置。例如,目标位置可以是屏幕的顶部。当目标元素为元素列表中位于顶部的元素时,若包含目标元素的轮廓的上边线与屏幕顶部重合,可以确定目标元素处于目标位置。
128.在本实施例中,第一调整模块703可以在确定目标元素处于目标位置时,基于操作点向第一方向的滑动距离,调整元素列表中的刷新演示元素的显示高度由初始高度逐渐增大。
129.其中,刷新演示元素为用于演示刷新操作的元素,刷新演示元素可以是预先指定的任意位置的元素。例如,刷新演示元素可以是元素列表中的第二个元素,即位于顶部元素之下的第一个元素。刷新演示元素具有初始高度,通常,初始高度可以为0,即用户没有通过滑动操作进行刷新时,在屏幕上不显示刷新演示元素。当执行本步骤时,随着操作点的移动,刷新演示元素显示在屏幕上同时高度由0逐渐增大。
130.在本实施例中,第一刷新模块704可以响应于滑动操作结束且操作点向第一方向的滑动距离满足滑动距离条件,触发对元素列表的刷新操作。
131.第一刷新模块704可以在检测到用户执行了某种动作,从而确定滑动操作结束,例如当用户的手指不再与屏幕接触,或释放鼠标按键时,确定滑动操作结束。
132.滑动距离条件可以是基于滑动距离设置的触发条件,例如,当滑动距离大于等于预设距离阈值时,确定满足滑动距离条件。
133.刷新操作的对象通常为整个元素列表。在一些情况下,也可以预先设置刷新操作的对象,例如,在应用程序关闭前,只刷新除位于元素列表顶部的元素以外的其他元素。
134.参照图8,图8是本公开另一示例性实施例提供的元素列表的刷新控制装置的结构示意图。
135.在一些可选的实现方式中,该装置还包括:第二调整模块705,用于调整刷新演示元素的显示高度减小至初始高度。
136.在一些可选的实现方式中,该装置还包括:显示模块706,用于在调整刷新演示元素的显示高度的过程中,在屏幕上的刷新演示元素的对应位置显示预设的刷新演示画面。
137.在一些可选的实现方式中,显示模块706包括:第一显示单元7061,用于在刷新演示元素的显示高度增大的过程中,在刷新演示元素的对应位置显示第一刷新演示画面;第二显示单元7062,用于在刷新演示元素的显示高度减小的过程中,在刷新演示元素的对应位置显示第二刷新演示画面。
138.在一些可选的实现方式中,该装置还包括:第三调整模块707,用于响应于滑动操作结束且操作点向第一方向的滑动距离不满足滑动距离条件,调整刷新演示元素的显示高度减小至初始高度。
139.在一些可选的实现方式中,第一确定模块701包括:第一确定单元7011,用于在屏幕上确定操作点的第一滑动距离和第二滑动距离,其中,第一滑动距离是第一轴向上的滑动距离,第二滑动距离是第二轴向上的滑动距离;第二确定单元7012,用于响应于确定第一滑动距离大于第二滑动距离,且所述操作点映射到所述第一轴向上的点的移动方向为第一方向,确定操作点向第一方向滑动。
140.在一些可选的实现方式中,该装置还包括:第一控制模块708,用于响应于确定第
一滑动距离小于第二滑动距离,基于操作点所在的位置,对元素列表执行向第二方向滑动的滑动操作,其中,第二方向为操作点映射到第二轴向上的点的移动方向。
141.在一些可选的实现方式中,该装置还包括:第二控制模块709,用于响应于确定操作点向第三方向滑动,对元素列表执行向第三方向滑动的滑动操作,其中,第三方向是第一方向的反方向;第三控制模块710,用于响应于确定操作点向第一方向滑动且目标元素不处于目标位置,对元素列表执行向第一方向滑动的滑动操作。
142.本公开上述实施例提供的元素列表的刷新控制装置,通过在确定对元素列表的滑动操作的操作点向第一方向滑动时,确定元素列表中的目标元素是否处于目标位置,若处于目标位置,基于操作点向第一方向的滑动距离,调整元素列表中的刷新演示元素的显示高度由初始高度逐渐增大,在滑动操作结束且滑动距离满足滑动距离条件时,触发对元素列表的刷新操作,从而实现了在元素列表中的任意位置设置滑动刷新的效果,丰富了刷新演示的方式,使列表刷新演示的灵活性更高,可以满足不同的列表设计需求。此外,本公开实施例直接在元素列表中指定刷新演示元素,无需利用现有技术中需要将元素列表包裹进一套布局中实现刷新演示,在列表的布局复杂的情况下,相比现有技术,本公开实施例无需解决复杂布局的滑动冲突,降低了元素列表布局的设计难度,减少了元素列表设计的工作量,提高了元素列表布局设计的效率。
143.示例性电子设备
144.下面,参考图9来描述根据本公开实施例的电子设备。该电子设备可以是如图1所示的终端设备101和服务器103中的任一个或两者、或与它们独立的单机设备,该单机设备可以与终端设备101和服务器103进行通信,以从它们接收所采集到的输入信号。
145.图9图示了根据本公开实施例的电子设备的框图。
146.如图9所示,电子设备900包括一个或多个处理器901和存储器902。
147.处理器901可以是中央处理单元(cpu)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备900中的其他组件以执行期望的功能。
148.存储器902可以包括一个或多个计算机程序产品,计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。易失性存储器例如可以包括随机存取存储器(ram)和/或高速缓冲存储器(cache)等。非易失性存储器例如可以包括只读存储器(rom)、硬盘、闪存等。在计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器901可以运行程序指令,以实现上文的本公开的各个实施例的元素列表的刷新控制方法以及/或者其他期望的功能。在计算机可读存储介质中还可以存储诸如元素列表中的元素对应的数据项等各种内容。
149.在一个示例中,电子设备900还可以包括:输入装置903和输出装置904,这些组件通过总线系统和/或其他形式的连接机构(未示出)互连。
150.例如,在该电子设备是终端设备101或服务器103时,该输入装置903可以是触摸屏、鼠标、键盘等设备,用于输入操作指令。在该电子设备是单机设备时,该输入装置903可以是通信网络连接器,用于从终端设备101和服务器103接收所输入的操作指令。
151.该输出装置904可以向外部输出各种信息,包括展示的元素列表。该输出设备904可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等等。
152.当然,为了简化,图9中仅示出了该电子设备900中与本公开有关的组件中的一些,
省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,电子设备900还可以包括任何其他适当的组件。
153.示例性计算机程序产品和计算机可读存储介质
154.除了上述方法和设备以外,本公开的实施例还可以是计算机程序产品,其包括计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本公开各种实施例的元素列表的刷新控制方法中的步骤。
155.所述计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如java、c++等,还包括常规的过程式程序设计语言,诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
156.此外,本公开的实施例还可以是计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本公开各种实施例的元素列表的刷新控制方法中的步骤。
157.所述计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
158.示例性计算机程序
159.本公开实施例还提供了一种计算机程序产品,包括计算机程序/指令,所述计算机程序/指令被处理器执行时,可以实现上述任一可能的实现方式中的元素列表的刷新控制方法。
160.该计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选例子中,该计算机程序产品具体体现为计算机存储介质,在另一个可选例子中,该计算机程序产品具体体现为软件产品,例如软件开发包(software development kit,sdk)等等。
161.以上结合具体实施例描述了本公开的基本原理,但是,需要指出的是,在本公开中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本公开的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本公开为必须采用上述具体的细节来实现。
162.本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于系统实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
163.本公开中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具
有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
164.可能以许多方式来实现本公开的方法和装置。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本公开的方法和装置。用于所述方法的步骤的上述顺序仅是为了进行说明,本公开的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本公开实施为记录在记录介质中的程序,这些程序包括用于实现根据本公开的方法的机器可读指令。因而,本公开还覆盖存储用于执行根据本公开的方法的程序的记录介质。
165.还需要指出的是,在本公开的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本公开的等效方案。
166.提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本公开。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本公开的范围。因此,本公开不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
167.为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本公开的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1