CN113553526B - 一种数据显示方法、装置及设备 - Google Patents

一种数据显示方法、装置及设备 Download PDF

Info

Publication number
CN113553526B
CN113553526B CN202110921241.XA CN202110921241A CN113553526B CN 113553526 B CN113553526 B CN 113553526B CN 202110921241 A CN202110921241 A CN 202110921241A CN 113553526 B CN113553526 B CN 113553526B
Authority
CN
China
Prior art keywords
carousel
data
queue
bar
width
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.)
Active
Application number
CN202110921241.XA
Other languages
English (en)
Other versions
CN113553526A (zh
Inventor
罗永平
霍丽莹
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Zitiao Network Technology Co Ltd
Original Assignee
Beijing Zitiao Network Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Zitiao Network Technology Co Ltd filed Critical Beijing Zitiao Network Technology Co Ltd
Priority to CN202110921241.XA priority Critical patent/CN113553526B/zh
Publication of CN113553526A publication Critical patent/CN113553526A/zh
Application granted granted Critical
Publication of CN113553526B publication Critical patent/CN113553526B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9577Optimising the visualization of content, e.g. distillation of HTML documents

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Studio Circuits (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本申请实施例公开了一种数据显示方法,在针对待展示的数据生成轮播条时,获取轮播队列当前的宽度,即第一宽度。判断该第一宽度是否满足第一预设条件,如果是,则继续生成新的第一轮播条,并将第一轮播条拼接到轮播队列的尾部。同时,从数据源中读取待展示数据加载到第一轮播条,再重新判断轮播队列的第一宽度,直至第一宽度不满足第一预设条件,则暂停轮播条的生成。也就是,本申请实施例在对待展示的数据进行初始化操作时,并非一次性生成所有待展示数据所对应的轮播条,而是生成部分数据的轮播条,以达到循环轮播要求所使用的轮播条,从而减少轮播条的冗余,降低对内存资源的占用。

Description

一种数据显示方法、装置及设备
技术领域
本申请涉及计算机处理技术领域,具体涉及一种数据显示方法、装置及设备。
背景技术
随着互联网技术的不断发展,为提高用户的使用体验,通过轮播技术在显示端循环播放所需展示的数据。其中,轮播技术可以按照约定次序不断对数据进行展示,从显示屏幕的一侧出现,并消失在显示屏幕的另一侧,当所有数据在屏幕上出现过一次后,再从第一条数据重新开始循环展示。
目前的轮播技术在初始化待轮播的数据源时,会针对数据源中的每个数据生成对应的轮播条,进而通过循环该轮播条实现数据的展示。其中,轮播条用于承载数据。当出现新的数据需要轮播时,对数据源进行更新,并重新针对数据源中的每个数据生成对应的轮播条。然而,当不断出现新的数据时,需要不断地重新生成轮播条,占用大量系统资源,影响数据的显示。
发明内容
有鉴于此,本申请实施例提供一种数据显示方法、装置及设备,以实现按需生成轮播条,减少对系统资源的占用。
为实现上述目的,本申请实施例提供的技术方案如下:
在本申请实施例第一方面,提供了一种数据显示方法,该方法可以包括:
在轮播过程中,获取轮播队列的第一宽度,所述轮播队列的第一宽度由所述轮播队列中各轮播条的宽度确定,所述轮播条的宽度由加载到所述轮播条上的数据确定;
在所述轮播队列的第一宽度满足第一预设条件时,生成第一轮播条并拼接在所述轮播队列的尾部;
按顺序从数据源中读取待展示的数据并加载到所述第一轮播条,重新获取所述轮播队列的第一宽度,直至所述轮播队列的第一宽度不满足所述第一预设条件时,停止轮播条的生成。
在本申请实施例第二方面,提供了一种数据显示装置,该装置可以包括:
获取单元,用于在轮播过程中,获取轮播队列的第一宽度,所述轮播队列的第一宽度由所述轮播队列中各轮播条的宽度确定,所述轮播条的宽度由加载到所述轮播条上的数据确定;
生成单元,用于在所述轮播队列的第一宽度满足第一预设条件时,生成第一轮播条并拼接在所述轮播队列的尾部;
加载单元,用于按顺序从数据源中读取待展示的数据并加载到所述第一轮播条,重新执行所述获取单元以及后续操作,直至所述轮播队列的第一宽度不满足所述第一预设条件时,停止轮播条的生成。
在本申请实施例第三方面,提供了一种电子设备,所述设备包括:处理器和存储器;
所述存储器,用于存储指令或计算机程序;
所述处理器,用于执行所述存储器中的所述指令或计算机程序,以使得所述电子设备执行第一方面所述的方法。
在本申请实施例第四方面,提供了一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行以上第一方面所述的方法。
由此可见,本申请实施例具有如下有益效果:
本申请实施例提供的技术方案,在轮播初始化时,获取轮播队列的第一宽度,该轮播队列的第一宽度由轮播队列中各轮播条的宽度确定,轮播条的宽度由加载到轮播条上的数据确定。判断第一宽度是否满足第一预设条件,如果是,则继续生成第一轮播条,并将该第一轮播条拼接在轮播队列的尾部。同时,按顺序从数据源中读取待展示的数据并加载到第一轮播条上,此时轮播队列的第一宽度发生变化,则重新判断第一宽度是否满足第一预设条件,如果满足,则继续生成第一轮播条以及执行后续操作;如果不满足第一预设条件,表明当前轮播队列中的轮播条可以满足循环轮播的要求,无需再生成轮播条,则停止轮播条的生成。也就是,在轮播过程中,可以实时判断轮播队列的第一宽度是否满足第一预设条件,如果满足,则继续生成第一轮播条如果不满足,则暂停轮播条的生成。可见,通过本申请实施例提供的方法,可以动态生成满足循环轮播要求所使用的轮播条,无需一次性生成全部的轮播条,减少对内存资源的占用。
附图说明
图1为本申请实施例提供的一种轮播条生成方法流程图;
图2a为本申请实施例提供的一种轮播条生成示意图;
图2b为本申请实施例提供的一种轮播队列轮播示意图;
图2c为本申请实施例提供的一种删除轮播条场景示意图;
图3为本申请实施例提供的一种数据显示方法流程图;
图4a为本申请实施例提供的一种确定目标位置场景示意图;
图4b为本申请实施例提供的另一种确定目标位置场景示意图;
图4c为本申请实施例提供的一种插入紧急数据场景示意图;
图5为本申请实施例提供的一种断点续播场景示意图;
图6为本申请实施例提供的一种数据显示场景示意图;
图7为本申请实施例提供的一种数据显示装置结构图;
图8为本申请实施例提供的一种电子设备结构图。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请实施例作进一步详细的说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本申请,并非对本申请的限定。另外,还需要说明的是,为便于描述,附图中仅示出了与本申请相关的部分,并非全部结构。
为便于理解本申请技术方案,下面将对本申请涉及的技术术语进行说明。
跑马灯是一种用于轮播展示数据的装置,其效果类似于LCD显示屏轮播展示消息。跑马灯的主要功能是根据预先配置的文案,将每一条文案依次从显示屏幕的一端出现,并消失在显示屏幕的另一端。
发明人经过研究发现,传统的跑马灯在实现轮播展示时,将在初始化数据源时,会针对数据源中的全部数据生成对应的轮播条,以将数据加载到轮播条进行展示。例如,数据源中存在10条数据待展示,则生成10个轮播条。当出现新数据需要展示时,则更新数据源,尚未展示的轮播条将被丢弃,重新针对数据源中的全部数据生成对应的轮播条,消耗大量系统资源。而且,显示屏幕的宽度是有限的,一次只能展示数个轮播条,而未被展示的轮播条只能等待被展示。而这些未被展示的轮播条将占用大量的内存资源。
基于此,本申请实施例提供了一种数据显示方法,在针对待展示的数据生成轮播条时,获取轮播队列当前的宽度,即第一宽度。判断该第一宽度是否满足第一预设条件,如果是,则继续生成新的轮播条,即第一轮播条,并将第一轮播条拼接到轮播队列的尾部。同时,从数据源中读取待展示数据加载到第一轮播条,再重新判断轮播队列的第一宽度,直至第一宽度不满足第一预设条件,则暂停轮播条的生成。也就是,本申请实施例在对待展示的数据进行初始化操作时,并非一次性生成所有待展示数据所对应的轮播条,而是生成部分数据的轮播条,以达到循环轮播要求所使用的轮播条。同时,实时判断轮播队列的第一宽度能满足循环轮播要求,如果不能满足,则继续生成新的轮播条,如果可以满足,则暂停轮播条的生成,从而减少轮播条的冗余,降低对内存资源的占用。
另外,在监测到新数据出现时,确定新数据插入到数据源中的目标位置,以将新数据插入到该目标位置。当轮播队列中第二数据消失在显示区域上且下一个被加载到轮播队列中的数据为数据源中目标位置所对应的数据时,则从目标位置读取插入的新数据,并利用该新数据更新到第二数据所占用的轮播条,以使得新数据可以被显示在显示区域上。也就是,当出现新数据插入到数据源中时,无需对数据源中的所有数据生成对应的轮播条,而是复用已存在的且刚消失在显示区域上的数据所占用的轮播条,从而降低对内存资源的占用。
需要说明的是,本实施例中轮播区可以为显示设备的整个显示屏幕,或者为网页中的某一显示区域,本实施例在此不再限定。
为便于理解本申请实施例的方案,下面将结合附图先对本申请实施例中的轮播条的生成过程进行说明。
参见图1,该图为本申请实施例提供的一种轮播条生成方法流程图,如图1所示,该方法可以包括:
S101:获取轮播队列的第一宽度。
本实施例中,在获取待展示的数据源时,将对该数据源进行初始化操作,以生成用于展示数据源中数据所使用的轮播条。在初始化时,尚未生成轮播条,则轮播队列的第一宽度为零。其中,轮播队列的第一宽度由轮播队列中各轮播条的宽度确定,该轮播条的宽度由加载到该轮播条上的数据所决定。即,轮播条的宽度等于其所加载的数据的宽度。
需要说明的是,初始化过程中,每当生成一个轮播条,将依次从数据源中取出待展示的数据加载到该轮播条上。
S102:判断第一宽度是否满足第一预设条件,如果是,则执行S103;如果否,则停止轮播条的生成。
其中,第一预设条件可以根据实际情况进行设定,本实施例中考虑到实现循环轮播的要求,第一预设条件可以设定为轮播队列的第一宽度小于轮播区的宽度与目标轮播条的宽度之和。其中,目标轮播条的宽度由目标轮播条所加载的数据确定,该目标轮播条为距离轮播区的第一端最近的轮播条,该轮播区的第一端为显示的数据离开轮播区的一端。
S103:生成第一轮播条,并拼接在轮播队列的尾部。
本实施例中,在确定出轮播队列的第一宽度小于轮播区的宽度与目标轮播的宽度之和时,表明当轮播队列中目标轮播条从轮播区的第一端消失时,轮播区的第二端没有额外的轮播条进入,导致轮播出现中断,因此,为保证轮播的无缝衔接,则重新生成新的轮播条,即第一轮播条,以将该第一轮播条追加到轮播队列的末尾。
S104:从数据源中读取待展示的数据加载到第一轮播条,并重新执行S101。
本实施例中,当生成第一轮播条后,将该第一轮播条追加到轮播队列的末尾,并从数据源中读取待展示的数据,将其加载到第一轮播条上。在将待展示的数据加载到第一轮播条后,重新获取轮播队列的第一宽度,以执行S102的判断操作,直至轮播队列的第一宽度不满足第一预设条件,停止轮播条的生成。
例如图2a所示,数据源中包括4条数据,分别为数据1、数据2、数据3和数据4,tw表示轮播队列的第一宽度,ci表示目标轮播条,sw表示显示屏幕的宽度。状态1表示生成轮播条0,该轮播条0用于承载数据1,此时ci为c0,tw=w0,其中,w0表示轮播条0加载数据1后的宽度,此时tw<sw+w0,则继续生成轮播条1;状态2表示该轮播条1追加到轮播条0后并承载数据2,此时ci为c0,tw=w0+w1,w1表示轮播条1加载完数据2后的宽度,此时tw<sw+w0,则继续生成轮播条2;状态3表示将轮播条2追加到轮播条1后并承载数据3,此时ci为c0,tw=w0+w1+w2,w2表示轮播条2加载完数据3后的宽度,此时tw<sw+w0,则继续生成轮播条3;状态4表示将轮播条3追加到轮播条2后并承载数据4,此时ci为c0,tw=w0+w1+w2+w3,w3表示轮播条3加载完数据4后的宽度,此时tw<sw+w0,则继续生成轮播条4;状态5表示将轮播条4追加到轮播条3后并承载数据1,此时ci为c0,tw=w0+w1+w2+w3+w4,w4表示轮播条4加载完数据1后的宽度,此时tw>sw+w0,则停止轮播条的生成。其中,w0=w4。在完成轮播条的生成后,从状态6开始进行数据轮播,该状态下,轮播队列包括5个轮播条,分别承载数据1、数据2、数据3、数据4以及数据1。其中,图2a中的箭头表示数据的轮播方向,且在图2a所示的应用场景中,显示屏幕的第一端为显示屏幕的左端,显示屏幕的第二端为显示屏幕的右端。
通过图2a可知,在初始化开始时,不存在轮播条,在获取到数据源后,会依次从状态1到状态4创建4条轮播条。当完成轮播条3创建后,所有轮播条的总宽度已经超过显示屏幕的屏幕宽度,为满足循环轮播的需求,额外生成一条轮播条,确保消失在显示屏幕左侧的轮播条会从显示屏幕右侧出现,实现轮播的无缝衔接。
可见,本实施例在针对数据源中的数据生成轮播条时,只需动态生成满足循环轮播要求所使用的轮播条即可,无需一次性生成全部的轮播条,减少对内存资源的占用。
可选的,当目标轮播条上的数据滚动出轮播区的第一端时,将该目标轮播条追加到轮播队列的末尾,并从数据源中读取待展示的数据,将该待展示的数据加载到目标轮播条上,进而继续对数据源中的数据进行展示。即,本实施例中可以复用目标轮播条,无需生成新的轮播条,减少对内存资源的占用。例如图2b所示,数据1消失在显示屏幕的左侧,则将数据1所占用的轮播条0追加到轮播队列的末尾。此时,数据源中待展示的数据为数据2,则将数据2加载到轮播条0上。此时,轮播条0的宽度由数据2确定。
可选的,为保证轮播队列的第一宽度依然满足不小于轮播区的宽度与目标轮播条的宽度之和,在复用目标轮播条后,继续执行S101-S104的操作,如果第一宽度不小于轮播区的宽度与目标轮播条的宽度之和,则无需生成新的轮播条。如果第一宽度小于轮播区的宽度与目标轮播条的宽度之和,则生成新的轮播条,并将该新的轮播条追加到轮播队列的末尾。同时,从数据源中读取待展示的数据,并将其加载到新追加的轮播条上。
可选的,响应于轮播队列中第一数据滚动出轮播区,获取轮播队列的第二宽度;在第二宽度满足第二预设条件时,删除第一数据所在的轮播条。其中,第二宽度是由轮播队列中除第一数据所在轮播条之外的其它各轮播条的宽度确定的。也就是,第二宽度等于轮播队列中除第一数据所占用的轮播条之外的所有轮播条的宽度之和。即,在满足循环轮播的需求下,删除多余的轮播条,从而减少对内存的占用。其中,第二预设条件可以为轮播队列的第二宽度大于等于轮播区的宽度与目标轮播条的宽度之和。目标轮播条为距离轮播区的第一端最近的轮播条,该轮播区的第一端为数据离开轮播区的一端。
例如图2c所示,第一数据为轮播队列中的数据4,此时轮播队列的第二宽度等于数据5、数据6、紧1(紧急数据1)、紧2(紧急数据2)、数据7和数据1各自所占用轮播条的宽度总和,目标轮播条的宽度为数据5的宽度,该数据5的宽度小于轮播队列中数据1位于显示屏幕右侧之外的宽度,即轮播队列的第二宽度大于显示屏幕的宽度与目标轮播条的宽度之和,则无需继续保留数据4所占用的轮播条,则将该轮播条删除。在后续轮播过程中,当第一数据为轮播队列中的数据5时,此时轮播队列的第二宽度为数据6、紧1、紧2、数据7和数据1各自所占用轮播条的宽度总和,目标轮播条的宽度为数据6的宽度,此时,即轮播队列的第二宽度小于显示屏幕的宽度与目标轮播条的宽度之和,则不对数据5所占用的轮播条进行删除,而是将数据5所占用的轮播条追加到轮播队列的尾部,并将数据源中的下一个待展示的数据2加载到数据5所占用的轮播条上。该情况下,轮播队列的第一宽度等于数据6、紧1、紧急2、数据7和数据1以及数据2各自所占用轮播条的宽度总和,该第一宽度大于显示屏幕的宽度与目标轮播条的宽度之和,则不再生成新的轮播条。
基于上述轮播条的动态生成方案,当出现新的数据需要进行展示时,将该新的数据插入数据源,进而根据上述轮播过程对新的数据进行展示。为便于理解新数据的插入和展示,下面将结合附图进行说明。
参见图3,该图为本申请实施例提供的一种数据显示方法流程图,如图3所示,该方法可以包括:
S301:响应于新数据的出现,确定新数据插入到数据源中的目标位置。
本实施例中,在对数据源中的数据进行轮播过程中,可以实时监测是否有新数据的出现,如果出现新数据,则确定该新数据插入到数据源中的位置。其中,新数据的数据类型可以为图片、文本、视频中的一种或多种组合。
可选的,新数据可以分为紧急数据和非紧急数据,当新数据为非紧急数据时,无需对该新数据进行紧急显示,则将数据源中的最后一个数据中的下个位置确定为目标位置。即将新数据插入到数据源的尾部。当新数据为紧急数据时,为保证紧急数据能够及时展示,需要在合适的时机将其加载到轮播条上。由于加载到轮播条上的数据是依次从数据源中读取的,因此,需要确定紧急数据插入到数据源中的目标位置。具体地,确定数据源中即将被加载到轮播队列中的第三数据对应的位置;将该第三数据对应的位置确定为目标位置。也就是,确定数据源中尚未被加载到轮播条且即将加载到轮播条上的数据,将该数据对应的位置确定为目标位置,从而保证下一时刻被加载到轮播条上的数据为紧急数据。
其中,确定数据源中即将被加载到轮播队列中的第三数据对应的位置,可以通过以下方式实现:
一种示例为,确定轮播队列中最后一个轮播条所加载的数据的第一序号;将该第一序号加1作为第三数据对应的位置。例如,数据源中包括4个数据,为[数据1、数据2、数据3、数据4],其中,数据1对应的序号为0,数据2对应的序号为1,数据3对应的序号为2,数据4对应的序号为3。此时轮播队列中最后一个轮播条上数据的序号为序号0,即表示最后一个轮播条上的数据1,按照轮播顺序,下一个即将被加载到轮播条上的数据为数据2,其序号为1。因此,将最后一个轮播条上的序号0加1作为第二数据(数据2)对应的位置。
一种示例为,获取目标轮播条上所加载的数据的第二序号以及轮播队列中所有轮播条的数量;根据该第二序号以及轮播队列中所有轮播条的数量确定第三数据对应的位置。也就是,根据第二序号以及轮播队列中所有轮播条的数量确定即将被加载到轮播条上的数据(第三数据)的序号,该序号为第三数据在数据源中的位置。其中,目标轮播条为轮播队列中距离轮播区的第一端最近的轮播条,该轮播区的第一端为数据离开轮播区的一端。
具体地,当第二序号与轮播队列中所有轮播条的数量之和小于数据源中的数据个数时,则将第二序号以及轮播队列中所有轮播条的数量的和值确定为即将被加载到轮播条上的第三数据对应的位置。例如图4a所示,数据源中包括7个数据,该7个数据对应的序号为序号0-序号6,此时轮播队列中距离显示屏幕左端最近的轮播条上数据为数据1,该数据1对应的第二序号为序号0,轮播队列中的轮播条的数量为6,则二者和值为6,则第三数据对应的位置为序号6。即,第三数据的位置为数据源中数据7所在的位置。
当第二序号与轮播队列中所有轮播条的数量之和大于等于数据源中的数据个数时,获取数据源中数据个数;将第二序号与轮播队列中所有轮播条的数量相加并对数据源中数据个数取余,将余数确定为第三数据对应的位置。例如图4b所示,数据源中包括7个数据,该7个数据对应的序号为序号0-序号6,此时轮播队列中距离显示屏幕左端最近的轮播条上数据为数据3,该数据3对应的第二序号为序号2,轮播队列中的轮播条的数量为6,则二者和值为8,则将和值对7取余获得余数1,则第三数据对应的位置为序号1。即,第三数据的位置为数据源中数据2所在的位置。
S302:将新数据插入到目标位置。
在确定出目标位置后,将新数据插入到目标位置,以便在预设时机从数据源中读取该新数据进行轮播展示。
S303:响应于轮播队列中第二数据滚动出轮播区且位于目标位置之前的位置上的数据已被加载到轮播队列的轮播条上,从目标位置读取新数据,并将该新数据加载到第二数据所占用的第二轮播条上,以对新数据进行显示。
本实施例中,当轮播队列中某一数据消失在显示区域且数据源中位于目标位置之前的数据均已被加载到轮播条上时,从目标位置读取新数据,并利用该新数据更新第二数据所占用的轮播条,进而对该新数据进行显示。
为便于理解,以新数据为紧急数据为例进行说明,参见图4c所示,紧急数据1可以在状态1-状态4任意时刻被插入到数据源中,通过前述可知,出现的紧急数据1将被插入到数据源中序号2的位置,此时数据源中的数据为[数据1、紧急数据1、数据2、数据3、数据4]。当数据1消失在屏幕上时,将数据1所占用的轮播条追加到轮播队列的尾部,并从数据源中读取紧急数据1,并将该紧急数据1加载到轮播条上,以等待被轮播展示。
可选的,对于紧急数据而言,可能只需展示一次,为避免对紧急数据的循环展示,在紧急数据被第一次轮播展示后,从数据源中删除该紧急数据。具体地,响应于紧急数据消失在屏幕上,将紧急数据从数据源中删除。
需要说明的是,在对新数据进行轮播展示过程,实时判断轮播队列的第一宽度是否满足第一预设条件,如果满足第一预设条件,则生成新的轮播条,以利用新的轮播条加载新数据。同时,判断轮播队列的第二宽度是否满足第二预设条件,如果满足第二预设条件,则删除刚滚动出轮播区的轮播条。
可见,在数据轮播过程中,实时监测是否出现新数据。在监测到新数据出现时,确定新数据插入到数据源中的目标位置,并将该新数据插入到目标位置。当轮播队列中某一数据(第二数据)消失在轮播区时且位于该目标位置之前的位置上的数据均已加载到轮播队列的轮播条上,则从目标位置读取插入的新数据,并将该数据加载到第二数据所占用的轮播条,以便在轮播队列不断滚动时展示该新数据。也就是,在本申请实施例中当出现新数据时,先将其插入到数据源中,当某一数据消失在屏幕上时,表明该数据已被展示完,并且下一个将被加入到轮播队列中的数据为目标位置上的数据时,将新数据加载到消失在屏幕上的数据所占用的轮播条,即复用第二数据所占用的轮播条,减少轮播条的生成,从而减少对系统资源的占用。
另外,在目前的轮播场景下,当用户离开轮播场景后重新进入时,由于不支持断点续播,将出现部分数据未被展示的问题,影响使用体验。基于此,本申请实施例提供了一种断点续播方法,具体为,响应于用户触发的离开轮播场景的操作,记录当前轮播队列的轮播状态;并在用户离开轮播场景时,将轮播队列的状态置为上述轮播状态。当用户重新进入时,从该轮播状态开始展示轮播队列中的数据。其中,获取当前轮播队列的轮播状态可以通过以下方式实现,获取轮播开始时间以及离开轮播场景的结束时间;根据结束时间和开始时间确定轮播时长;根据该轮播时长以及轮播速度确定偏移量,将所述偏移量作为当前轮播队列的轮播状态。
为便于理解,参见图5,当轮播队列运行到状态2时,离开轮播场景后,此时将导致轮播队列直接达到状态3。本实施例将记录状态2,在离开轮播场景后,对轮播队列进行重置操作,使得轮播队列恢复到状态2,也就是图5中的状态4。当用户再次进入轮播场景时,将从状态4开始展示,向状态5运行。
为便于理解本申请实施例的实现,下面将结合图6进行说明。图6中①表示状态,依次类推。图6以数据源包括7个数据,插入两个紧急数据为例进行说明。其中,紧1表示紧急数据1,紧2表示紧急数据2。状态1下轮播队列中包括6个轮播条,依次承载数据1-数据6。需要说明的是,紧急数据1和紧急数据2是在状态1之后出现,并被插入到数据源。状态1-状态4的情况下,数据源中的数据依次为数据1、数据2、数据3、数据4、数据5、数据6、紧急数据1、紧急数据2、数据7。
进入到状态4时,数据1消失在屏幕可视区域,此时轮播队列的第二宽度等于轮播队列中数据2-数据6的宽度之和,该第二宽度小于目标轮播条(数据2所在的轮播条)的宽度与屏幕宽度之和,则不删除数据1所占用的轮播条。在将紧急数据1加载到数据1所占用的轮播条后,此时,轮播队列的第一宽度等于数据2-数据6以及紧急数据1的宽度之和,此时,该第一宽度小于目标轮播条(数据2所在的轮播条)的宽度与屏幕宽度之和,则生成新的轮播条,并追加到轮播队列末尾,并从数据源中读取紧急数据2,将其加载到新的轮播条上,此时进入状态5。
从状态6进入到状态9过程中,不断判断轮播队列的第一宽度、第二宽度各自与目标轮播条的宽度与屏幕宽度之和的大小关系,并根据判断结果执行相应操作。
在到达状态10后,轮播队列的第二宽度等于轮播队列中数据5-数据1的宽度之和,由于数据5的宽度小于数据1位于屏幕右侧之外的宽度,则使得第二宽度大于目标轮播条(数据5所在的轮播条)的宽度与屏幕宽度之和,则删除数据4所占用的轮播条,进入状态11。
从状态11进入到状态15过程中,不断判断轮播队列的第一宽度、第二宽度各自与目标轮播条的宽度与屏幕宽度之和的大小关系,并根据判断结果执行相应操作。
在进入到状态16时,轮播队列的第二宽度等于轮播队列中紧2-数据3的宽度之和,由于紧2的宽度小于数据3位于屏幕右侧之外的宽度,则使得第二宽度大于目标轮播条(紧2所在的轮播条)的宽度与屏幕宽度之和,则删除紧1所占用的轮播条,进入状态17。
在从状态18进入状态19的过程中,轮播队列的第二宽度等于轮播队列中数据7-数据3的宽度之和,由于数据7的宽度大于数据3位于屏幕右侧之外的宽度,则使得第二宽度小于目标轮播条(数据7所在的轮播条)的宽度与屏幕宽度之和,则不删除紧2所占用的轮播条,将该轮播条追加到轮播队列的尾部,并将数据源中数据4加载到该轮播条上。此时,判断轮播队列第一宽度大于目标轮播条的宽度与屏幕宽度之和,则无需生成新的轮播条。
在进入到状态20时,轮播队列的第二宽度等于轮播队列中数据1-数据4的宽度之和,由于数据1的宽度大于数据4位于屏幕右侧之外的宽度,则使得第二宽度小于目标轮播条(数据1所在的轮播条)的宽度与屏幕宽度之和,则不删除数据7所占用的轮播条,将该轮播条追加到轮播队列的尾部,并将数据源中数据5加载到该轮播条上。此时,判断轮播队列第一宽度(轮播队列中数据1-数据5的宽度之和)仍小于目标轮播条的宽度与屏幕宽度之和,则生成新的轮播条,并将轮播条追加到轮播队列尾部,并从数据源中读取数据6将其加载到新追加的轮播条上。此时,判断轮播队列第一宽度(数据1-数据6的宽度之和)大于目标轮播条(数据1所在的轮播条)的宽度与屏幕宽度之和,则无需生成新的轮播条。
基于上述方法实施例,本申请实施例提供了一种数据显示装置,下面将结合附图对本申请实施例提供的装置进行说明。
参见图7,该图为本申请实施例提供的一种数据显示装置结构图,如图7所示,该装置700可以包括:获取单元701、生成单元702和加载单元703。
其中,获取单元701,用于在轮播过程中,获取轮播队列的第一宽度,所述轮播队列的第一宽度由所述轮播队列中各轮播条的宽度确定,所述轮播条的宽度由加载到所述轮播条上的数据确定;
生成单元702,用于在所述轮播队列的第一宽度满足第一预设条件时,生成第一轮播条并拼接在所述轮播队列的尾部;
加载单元703,用于按顺序从数据源中读取待展示的数据并加载到所述第一轮播条,重新执行所述获取单元以及后续操作,直至所述轮播队列的第一宽度不满足所述第一预设条件时,停止轮播条的生成。
在一种具体的实现方式中,所述还包括:删除单元;
所述获取单元,还用于响应于所述轮播队列中第一数据滚动出轮播区,获取所述轮播队列的第二宽度,所述轮播队列的第二宽度由除所述第一数据所在轮播条之外的其它轮轮播条的宽度确定的;
所述删除单元,用于在所述第二宽度满足第二预设条件时,删除所述第一数据所在的轮播条。
在一种具体的实现方式中,所述第一预设条件是指所述轮播队列的第一宽度小于所述轮播区的宽度与目标轮播条的宽度之和,所述目标轮播条的宽度由所述目标轮播条所加载的数据确定,所述目标轮播条为距离所述轮播区的第一端最近的轮播条,所述轮播区的第一端为数据离开所述轮播区的一端;所述第二预设条件是指所述轮播队列的第二宽度大于等于所述轮播区的宽度与所述目标轮播条的宽度之和。
在一种具体的实现方式中,所述装置还包括:
确定单元,用于响应于新数据的出现,确定所述新数据插入到数据源中的目标位置;
插入单元,用于将所述新数据插入到所述目标位置;
所述加载单元,还用于响应于轮播队列中第二数据滚动出所述轮播区且位于所述目标位置之前的位置上的数据已被加载到所述轮播队列,从所述目标位置读取所述新数据,并将所述新数据加载到所述第二数据所占用的第二轮播条上,以对所述新数据进行显示。
在一种具体的实现方式中,所述确定单元,具体用于确定所述数据源中即将被加载到所述轮播队列中的第三数据对应的位置;将所述第三数据对应的位置确定为目标位置。
在一种具体的实现方式中,所述确定单元,具体用于确定所述轮播队列中最后一个轮播条上所加载的数据对应的第一序号;将所述第一序号加1的和值作为所述第三数据对应的位置。
在一种具体的实现方式中,所述确定单元,具体用于获取目标轮播条上所加载的数据对应的第二序号以及所述轮播队列中所有轮播条的数量,所述目标轮播条为所述轮播队列中距离所述轮播区的第一端最近的轮播条,所述轮播区的第一端为数据离开所述轮播区的一端;根据所述第二序号以及所述轮播队列中所有轮播条的数量确定所述第三数据对应的位置。
在一种具体的实现方式中,所述确定单元,具体用于将所述第二序号以及所述轮播队列中所有轮播条的数量的和值确定为所述第三数据对应的位置。
在一种具体的实现方式中,所述确定单元,具体用于获取所述数据源中的数据个数;将所述第二序号与所述轮播队列中所有轮播条的数量相加并对所述数据个数取余,将余数确定为所述第三数据对应的位置。
在一种具体的实现方式中,所述装置还包括:
删除单元,用于响应于所述紧急数据滚动出所述轮播区,将所述紧急数据从所述数据源中删除。
在一种具体的实现方式中,所述装置还包括:
记录单元,用于响应于用户触发的离开轮播场景的操作,记录当前轮播队列的轮播状态;
配置单元,用于将所述轮播队列的状态置为所述轮播状态。
在一种具体的实现方式中,所述装置还包括:
显示单元,用于响应于重新进入所述轮播场景,从所述轮播状态开始展示所述轮播队列中的数据。
需要说明的是,本实施例中各个单元的实现可以参见上述图1或图3所述方法实施例中的相关描述,本实施例在此不再赘述。
下面参考图8,其示出了适于用来实现本申请实施例的电子设备800的结构示意图。本申请实施例中的终端设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(Personal Digital Assistant,个人数字助理)、PAD(portable androiddevice,平板电脑)、PMP(Portable Media Player,便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV(television,电视机)、台式计算机等等的固定终端。图8示出的电子设备仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图8所示,电子设备800可以包括处理装置(例如中央处理器、图形处理器等)801,其可以根据存储在只读存储器(ROM)802中的程序或者从存储装置808加载到随机访问存储器(RAM)803中的程序而执行各种适当的动作和处理。在RAM803中,还存储有电子设备800操作所需的各种程序和数据。处理装置801、ROM 802以及RAM 803通过总线804彼此相连。输入/输出(I/O)接口805也连接至总线804。
通常,以下装置可以连接至I/O接口805:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置806;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置807;包括例如磁带、硬盘等的存储装置808;以及通信装置809。通信装置809可以允许电子设备800与其他设备进行无线或有线通信以交换数据。虽然图8示出了具有各种装置的电子设备800,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
特别地,根据本申请的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置809从网络上被下载和安装,或者从存储装置808被安装,或者从ROM802被安装。在该计算机程序被处理装置801执行时,执行本申请实施例的方法中限定的上述功能。
本申请实施例提供的电子设备与上述实施例提供的数据显示方法属于同一发明构思,未在本实施例中详尽描述的技术细节可参见上述实施例,并且本实施例与上述实施例具有相同的有益效果。
本申请实施例提供一种计算机可读介质,其上存储有计算机程序,其中,所述程序被处理器执行时实现如上述任一实施例所述的数据显示方法。
需要说明的是,本申请上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
在一些实施方式中,客户端、服务器可以利用诸如HTTP(HyperText TransferProtocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“LAN”),广域网(“WAN”),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备执行上述数据显示方法。
可以以一种或多种程序设计语言或其组合来编写用于执行本申请的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元/模块的名称在某种情况下并不构成对该单元本身的限定,例如,语音数据采集模块还可以被描述为“数据采集模块”。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑设备(CPLD)等等。
在本申请的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
根据本申请的一个或多个实施例,提供了一种数据显示方法,该方法包括:
在轮播过程中,获取轮播队列的第一宽度,所述轮播队列的第一宽度由所述轮播队列中各轮播条的宽度确定,所述轮播条的宽度由加载到所述轮播条上的数据确定;
在所述轮播队列的第一宽度满足第一预设条件时,生成第一轮播条并拼接在所述轮播队列的尾部;
按顺序从数据源中读取待展示的数据并加载到所述第一轮播条,重新获取所述轮播队列的第一宽度,直至所述轮播队列的第一宽度不满足所述第一预设条件时,停止轮播条的生成。
根据本申请的一个或多个实施例,所述方法还包括:
响应于所述轮播队列中第一数据滚动出轮播区,获取所述轮播队列的第二宽度,所述轮播队列的第二宽度由除所述第一数据所在轮播条之外的其它轮播条的宽度确定的;
在所述第二宽度满足第二预设条件时,删除所述第一数据所在的轮播条。
根据本申请的一个或多个实施例,所述第一预设条件是指所述轮播队列的第一宽度小于所述轮播区的宽度与目标轮播条的宽度之和,所述目标轮播条的宽度由所述目标轮播条所加载的数据确定,所述目标轮播条为距离所述轮播区的第一端最近的轮播条,所述轮播区的第一端为数据离开所述轮播区的一端;所述第二预设条件是指所述轮播队列的第二宽度大于等于所述轮播区的宽度与所述目标轮播条的宽度之和。
根据本申请的一个或多个实施例,所述方法还包括:
响应于新数据的出现,确定所述新数据插入到数据源中的目标位置;
将所述新数据插入到所述目标位置;
响应于轮播队列中第二数据滚动出所述轮播区且位于所述目标位置之前的位置上的数据已被加载到所述轮播队列,从所述目标位置读取所述新数据,并将所述新数据加载到所述第二数据所占用的第二轮播条上,以对所述新数据进行显示。
根据本申请的一个或多个实施例,在所述新数据为紧急数据时,所述确定所述新数据插入到数据源中的目标位置,包括:
确定所述数据源中即将被加载到所述轮播队列中的第三数据对应的位置;
将所述第三数据对应的位置确定为目标位置。
根据本申请的一个或多个实施例,所述确定所述数据源中即将被加载到所述轮播队列中的第三数据对应的位置,包括:
确定所述轮播队列中最后一个轮播条上所加载的数据对应的第一序号;
将所述第一序号加1的和值作为所述第三数据对应的位置。
根据本申请的一个或多个实施例,所述确定所述数据源中即将被加载到所述轮播队列中的第三数据对应的位置,包括:
获取目标轮播条上所加载的数据对应的第二序号以及所述轮播队列中所有轮播条的数量,所述目标轮播条为所述轮播队列中距离所述轮播区的第一端最近的轮播条,所述轮播区的第一端为数据离开所述轮播区的一端;
根据所述第二序号以及所述轮播队列中所有轮播条的数量确定所述第三数据对应的位置。
根据本申请的一个或多个实施例,根据所述第二序号以及所述轮播队列中所有轮播条的数量确定所述第三数据对应的位置,包括:
将所述第二序号以及所述轮播队列中所有轮播条的数量的和值确定为所述第三数据对应的位置。
根据本申请的一个或多个实施例,根据所述第二序号以及所述轮播队列中所有轮播条的数量确定所述第三数据对应的位置,包括:
获取所述数据源中的数据个数;
将所述第二序号与所述轮播队列中所有轮播条的数量相加并对所述数据个数取余,将余数确定为所述第三数据对应的位置。
根据本申请的一个或多个实施例,所述方法还包括:
响应于所述紧急数据滚动出所述轮播区,将所述紧急数据从所述数据源中删除。
根据本申请的一个或多个实施例,所述方法还包括:
响应于用户触发的离开轮播场景的操作,记录当前轮播队列的轮播状态;
将所述轮播队列的状态置为所述轮播状态。
根据本申请的一个或多个实施例,所述方法还包括:
响应于重新进入所述轮播场景,从所述轮播状态开始展示所述轮播队列中的数据。
根据本申请的一个或多个实施例,提供了一种数据显示装置,于,所述装置包括:
获取单元,用于在轮播过程中,获取轮播队列的第一宽度,所述轮播队列的第一宽度由所述轮播队列中各轮播条的宽度确定,所述轮播条的宽度由加载到所述轮播条上的数据确定;
生成单元,用于在所述轮播队列的第一宽度满足第一预设条件时,生成第一轮播条并拼接在所述轮播队列的尾部;
加载单元,用于按顺序从数据源中读取待展示的数据并加载到所述第一轮播条,重新执行所述获取单元以及后续操作,直至所述轮播队列的第一宽度不满足所述第一预设条件时,停止轮播条的生成。
根据本申请的一个或多个实施例,所述还包括:删除单元;
所述获取单元,还用于响应于所述轮播队列中第一数据滚动出轮播区,获取所述轮播队列的第二宽度,所述轮播队列的第二宽度由除所述第一数据所在轮播条之外的其它轮播条的宽度确定的;
所述删除单元,用于在所述第二宽度满足第二预设条件时,删除所述第一数据所在的轮播条。
根据本申请的一个或多个实施例,所述第一预设条件是指所述轮播队列的第一宽度小于所述轮播区的宽度与目标轮播条的宽度之和,所述目标轮播条的宽度由所述目标轮播条所加载的数据确定,所述目标轮播条为距离所述轮播区的第一端最近的轮播条,所述轮播区的第一端为数据离开所述轮播区的一端;所述第二预设条件是指所述轮播队列的第二宽度大于等于所述轮播区的宽度与所述目标轮播条的宽度之和。
根据本申请的一个或多个实施例,所述装置还包括:
确定单元,用于响应于新数据的出现,确定所述新数据插入到数据源中的目标位置;
插入单元,用于将所述新数据插入到所述目标位置;
所述加载单元,还用于响应于轮播队列中第二数据滚动出所述轮播区且位于所述目标位置之前的位置上的数据已被加载到所述轮播队列,从所述目标位置读取所述新数据,并将所述新数据加载到所述第二数据所占用的第二轮播条上,以对所述新数据进行显示。
根据本申请的一个或多个实施例,所述确定单元,具体用于确定所述数据源中即将被加载到所述轮播队列中的第三数据对应的位置;将所述第三数据对应的位置确定为目标位置。
根据本申请的一个或多个实施例,所述确定单元,具体用于确定所述轮播队列中最后一个轮播条上所加载的数据对应的第一序号;将所述第一序号加1的和值作为所述第三数据对应的位置。
根据本申请的一个或多个实施例,所述确定单元,具体用于获取目标轮播条上所加载的数据对应的第二序号以及所述轮播队列中所有轮播条的数量,所述目标轮播条为所述轮播队列中距离所述轮播区的第一端最近的轮播条,所述轮播区的第一端为数据离开所述轮播区的一端;根据所述第二序号以及所述轮播队列中所有轮播条的数量确定所述第三数据对应的位置。
根据本申请的一个或多个实施例,所述确定单元,具体用于将所述第二序号以及所述轮播队列中所有轮播条的数量的和值确定为所述第三数据对应的位置。
根据本申请的一个或多个实施例,所述确定单元,具体用于获取所述数据源中的数据个数;将所述第二序号与所述轮播队列中所有轮播条的数量相加并对所述数据个数取余,将余数确定为所述第三数据对应的位置。
根据本申请的一个或多个实施例,所述装置还包括:
删除单元,用于响应于所述紧急数据滚动出所述轮播区,将所述紧急数据从所述数据源中删除。
根据本申请的一个或多个实施例,所述装置还包括:
记录单元,用于响应于用户触发的离开轮播场景的操作,记录当前轮播队列的轮播状态;
配置单元,用于将所述轮播队列的状态置为所述轮播状态。
根据本申请的一个或多个实施例,所述装置还包括:
显示单元,用于响应于重新进入所述轮播场景,从所述轮播状态开始展示所述轮播队列中的数据。
根据本申请的一个或多个实施例,提供了一种电子设备,所述设备包括:处理器和存储器;
所述存储器,用于存储指令或计算机程序;
所述处理器,用于执行所述存储器中的所述指令或计算机程序,以使得所述电子设备执行所述的数据显示方法。
根据本申请的一个或多个实施例,提供了一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行以上所述的数据显示方法。
需要说明的是,本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统或装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (14)

1.一种数据显示方法,其特征在于,所述方法包括:
在轮播过程中,获取轮播队列的第一宽度,所述轮播队列的第一宽度由所述轮播队列中各轮播条的宽度确定,所述轮播条的宽度由加载到所述轮播条上的数据确定;
在所述轮播队列的第一宽度满足第一预设条件时,生成第一轮播条并拼接在所述轮播队列的尾部,所述第一预设条件是指所述轮播队列的第一宽度小于轮播区的宽度与目标轮播条的宽度之和,所述目标轮播条的宽度由所述目标轮播条所加载的数据确定,所述目标轮播条为距离所述轮播区的第一端最近的轮播条,所述轮播区的第一端为数据离开所述轮播区的一端;
按顺序从数据源中读取待展示的数据并加载到所述第一轮播条,重新获取所述轮播队列的第一宽度,直至所述轮播队列的第一宽度不满足所述第一预设条件时,停止轮播条的生成。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于所述轮播队列中第一数据滚动出轮播区,获取所述轮播队列的第二宽度,所述轮播队列的第二宽度由除所述第一数据所在轮播条之外的其它轮播条的宽度确定的;
在所述第二宽度满足第二预设条件时,删除所述第一数据所在的轮播条,所述第二预设条件是指所述轮播队列的第二宽度大于等于所述轮播区的宽度与所述目标轮播条的宽度之和。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
响应于新数据的出现,确定所述新数据插入到数据源中的目标位置;
将所述新数据插入到所述目标位置;
响应于轮播队列中第二数据滚动出轮播区且位于所述目标位置之前的位置上的数据已被加载到所述轮播队列,从所述目标位置读取所述新数据,并将所述新数据加载到所述第二数据所占用的第二轮播条上,以对所述新数据进行显示。
4.根据权利要求3所述的方法,其特征在于,在所述新数据为紧急数据时,所述确定所述新数据插入到数据源中的目标位置,包括:
确定所述数据源中即将被加载到所述轮播队列中的第三数据对应的位置;
将所述第三数据对应的位置确定为目标位置。
5.根据权利要求4所述的方法,其特征在于,所述确定所述数据源中即将被加载到所述轮播队列中的第三数据对应的位置,包括:
确定所述轮播队列中最后一个轮播条上所加载的数据对应的第一序号;
将所述第一序号加1的和值作为所述第三数据对应的位置。
6.根据权利要求4所述的方法,其特征在于,所述确定所述数据源中即将被加载到所述轮播队列中的第三数据对应的位置,包括:
获取目标轮播条上所加载的数据对应的第二序号以及所述轮播队列中所有轮播条的数量,所述目标轮播条为所述轮播队列中距离所述轮播区的第一端最近的轮播条,所述轮播区的第一端为数据离开所述轮播区的一端;
根据所述第二序号以及所述轮播队列中所有轮播条的数量确定所述第三数据对应的位置。
7.根据权利要求6所述的方法,其特征在于,根据所述第二序号以及所述轮播队列中所有轮播条的数量确定所述第三数据对应的位置,包括:
将所述第二序号以及所述轮播队列中所有轮播条的数量的和值确定为所述第三数据对应的位置。
8.根据权利要求6所述的方法,其特征在于,根据所述第二序号以及所述轮播队列中所有轮播条的数量确定所述第三数据对应的位置,包括:
获取所述数据源中的数据个数;
将所述第二序号与所述轮播队列中所有轮播条的数量相加并对所述数据个数取余,将余数确定为所述第三数据对应的位置。
9.根据权利要求4-8任一项所述的方法,其特征在于,所述方法还包括:
响应于所述紧急数据滚动出所述轮播区,将所述紧急数据从所述数据源中删除。
10.根据权利要求1、2、4-8中任一项所述的方法,其特征在于,所述方法还包括:
响应于用户触发的离开轮播场景的操作,记录当前轮播队列的轮播状态;
将所述轮播队列的状态置为所述轮播状态。
11.根据权利要求10所述的方法,其特征在于,所述方法还包括:
响应于重新进入所述轮播场景,从所述轮播状态开始展示所述轮播队列中的数据。
12.一种数据显示装置,其特征在于,所述装置包括:
获取单元,用于在轮播过程中,获取轮播队列的第一宽度,所述轮播队列的第一宽度由所述轮播队列中各轮播条的宽度确定,所述轮播条的宽度由加载到所述轮播条上的数据确定;
生成单元,用于在所述轮播队列的第一宽度满足第一预设条件时,生成第一轮播条并拼接在所述轮播队列的尾部,所述第一预设条件是指所述轮播队列的第一宽度小于轮播区的宽度与目标轮播条的宽度之和,所述目标轮播条的宽度由所述目标轮播条所加载的数据确定,所述目标轮播条为距离所述轮播区的第一端最近的轮播条,所述轮播区的第一端为数据离开所述轮播区的一端;
加载单元,用于按顺序从数据源中读取待展示的数据并加载到所述第一轮播条,重新执行所述获取单元以及后续操作,直至所述轮播队列的第一宽度不满足所述第一预设条件时,停止轮播条的生成。
13.一种电子设备,所述设备包括:处理器和存储器;
所述存储器,用于存储指令或计算机程序;
所述处理器,用于执行所述存储器中的所述指令或计算机程序,以使得所述电子设备执行权利要求1-11任一项所述的方法。
14.一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行以上权利要求1-11任一项所述的方法。
CN202110921241.XA 2021-08-11 2021-08-11 一种数据显示方法、装置及设备 Active CN113553526B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110921241.XA CN113553526B (zh) 2021-08-11 2021-08-11 一种数据显示方法、装置及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110921241.XA CN113553526B (zh) 2021-08-11 2021-08-11 一种数据显示方法、装置及设备

Publications (2)

Publication Number Publication Date
CN113553526A CN113553526A (zh) 2021-10-26
CN113553526B true CN113553526B (zh) 2024-04-19

Family

ID=78105531

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110921241.XA Active CN113553526B (zh) 2021-08-11 2021-08-11 一种数据显示方法、装置及设备

Country Status (1)

Country Link
CN (1) CN113553526B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114282135A (zh) * 2021-12-10 2022-04-05 北京卓越乐享网络科技有限公司 数据轮播方法、装置、电子设备及存储介质
CN114640891B (zh) * 2022-05-18 2022-09-06 海看网络科技(山东)股份有限公司 一种iptv中可上下左右循环展示专题内容的方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013055518A1 (en) * 2011-10-11 2013-04-18 Serge Media, Inc. System and methods for content-search carousel for mobile-computing devices
CN104935840A (zh) * 2015-06-10 2015-09-23 深圳市创维群欣安防科技有限公司 一种拼接显示屏的字幕滚动显示方法及系统
CN109299449A (zh) * 2018-10-10 2019-02-01 拉扎斯网络科技(上海)有限公司 表格处理方法、装置、电子设备及可读存储介质
CN110418169A (zh) * 2018-04-26 2019-11-05 北京视联动力国际信息技术有限公司 一种监控数据的轮播方法和装置
CN110675800A (zh) * 2019-11-07 2020-01-10 广东乐心医疗电子股份有限公司 显示屏驱动方法和装置
CN110825871A (zh) * 2019-11-12 2020-02-21 腾讯科技(深圳)有限公司 一种文本展示方法、装置、设备及存储介质
CN111814427A (zh) * 2020-07-21 2020-10-23 腾讯科技(深圳)有限公司 文本显示方法、装置、电子设备及可读存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11237702B2 (en) * 2019-12-31 2022-02-01 Snap Inc. Carousel interface for post-capture processing in a messaging system

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013055518A1 (en) * 2011-10-11 2013-04-18 Serge Media, Inc. System and methods for content-search carousel for mobile-computing devices
CN104935840A (zh) * 2015-06-10 2015-09-23 深圳市创维群欣安防科技有限公司 一种拼接显示屏的字幕滚动显示方法及系统
CN110418169A (zh) * 2018-04-26 2019-11-05 北京视联动力国际信息技术有限公司 一种监控数据的轮播方法和装置
CN109299449A (zh) * 2018-10-10 2019-02-01 拉扎斯网络科技(上海)有限公司 表格处理方法、装置、电子设备及可读存储介质
CN110675800A (zh) * 2019-11-07 2020-01-10 广东乐心医疗电子股份有限公司 显示屏驱动方法和装置
CN110825871A (zh) * 2019-11-12 2020-02-21 腾讯科技(深圳)有限公司 一种文本展示方法、装置、设备及存储介质
CN111814427A (zh) * 2020-07-21 2020-10-23 腾讯科技(深圳)有限公司 文本显示方法、装置、电子设备及可读存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
对象轮播技术及其在资讯服务系统中的应用;尹西林;《中国优秀硕士学位论文全文数据库 信息科技辑》;I138-398 *

Also Published As

Publication number Publication date
CN113553526A (zh) 2021-10-26

Similar Documents

Publication Publication Date Title
CN113553526B (zh) 一种数据显示方法、装置及设备
CN113038234B (zh) 视频的处理方法、装置、电子设备和存储介质
CN111432001B (zh) 用于跳转场景的方法、装置、电子设备和计算机可读介质
CN110401877B (zh) 视频播放的控制方法、装置、电子设备、及存储介质
CN111240793B (zh) cell预渲染的方法、装置、电子设备以及计算机可读介质
CN111324834A (zh) 图文混排的方法、装置、电子设备及计算机可读介质
CN113535105B (zh) 媒体文件处理方法、装置、设备、可读存储介质及产品
CN112380819B (zh) 文档编辑方法、装置和电子设备
CN111290861B (zh) 消息处理方法、装置及电子设备
CN111756953A (zh) 视频处理方法、装置、设备和计算机可读介质
CN111258582A (zh) 一种窗口渲染方法、装置、计算机设备及存储介质
CN111246273A (zh) 视频投放方法、装置、电子设备及计算机可读介质
CN114630170B (zh) 一种音视频同步方法、装置、电子设备及存储介质
CN113138883B (zh) 消息处理方法、装置、存储介质及电子设备
CN110221892B (zh) 一种滚动窗口信息的方法、装置、介质和电子设备
CN113553527B (zh) 一种数据显示方法、装置及设备
CN115775290A (zh) 动画帧率的处理方法、装置、设备及存储介质
CN112333462A (zh) 直播间页面跳转方法、返回方法、装置及电子设备
CN114915849B (zh) 视频的预加载方法、装置、设备和介质
CN114598925B (zh) 一种视频编辑方法、装置、设备及存储介质
CN112306339B (zh) 用于显示图像的方法和装置
CN111259174B (zh) 多媒体发送方法、装置、电子设备及介质
CN112799822B (zh) 一种程序启动方法、装置、设备及介质
CN116450370A (zh) 一种进程间通信的方法及装置
CN116600164A (zh) 媒体内容的发布方法、装置、电子设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant