CN110209447A - 一种列表页数据显示方法以及列表页数据显示装置 - Google Patents

一种列表页数据显示方法以及列表页数据显示装置 Download PDF

Info

Publication number
CN110209447A
CN110209447A CN201910349829.5A CN201910349829A CN110209447A CN 110209447 A CN110209447 A CN 110209447A CN 201910349829 A CN201910349829 A CN 201910349829A CN 110209447 A CN110209447 A CN 110209447A
Authority
CN
China
Prior art keywords
cell
list page
page data
recycling
recycling cell
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.)
Granted
Application number
CN201910349829.5A
Other languages
English (en)
Other versions
CN110209447B (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.)
Wuba Co Ltd
Original Assignee
Wuba 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 Wuba Co Ltd filed Critical Wuba Co Ltd
Priority to CN201910349829.5A priority Critical patent/CN110209447B/zh
Publication of CN110209447A publication Critical patent/CN110209447A/zh
Application granted granted Critical
Publication of CN110209447B publication Critical patent/CN110209447B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Digital Computer Display Output (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本发明公开了一种列表页数据显示方法以及列表页数据显示装置,该方法包括:Native端对位于屏幕的可见区域的组件Cell进行渲染,得到已渲染Cell;利用所述已渲染Cell显示所述Cell对应的第一列表页数据;在发生列表页滚动时,所述Native端将回收Cell缓存至回收区,所述回收Cell是指滚动至屏幕的可见区域之外的已渲染Cell;确定发生列表页滚动后待显示于屏幕的可见区域的第二列表页数据;如果所述回收区中保存有回收Cell,则利用所述回收Cell显示所述第二列表页数据。这样,在发生列表页滚动,且需要显示新的列表页数据时,可以利用回收区中的回收Cell显示新的列表页数据,无需创建新的Cell,节省内存。

Description

一种列表页数据显示方法以及列表页数据显示装置
技术领域
本发明涉及通信技术领域,尤其涉及一种列表页数据显示方法以及列表页数据显示装置。
背景技术
列表页是一种数据展现形式,列表页一般包含大量展示数据的组件(Cell)。一次性创建大量的Cell会占用较多内存。在列表页发生滚动时,不断创建新的Cell,可能会影响到列表页滚动流畅度。
相关技术提供了一种数据列表展示组件(FlatList)。Flatlist会优先渲染屏幕内可见区域的Cell。对于位于屏幕可见区域外的Cell,会先创建一些空白元素进行填充。在列表页发生滚动时,可以动态计算屏幕的可见区域。位于屏幕的可见区域内的Cell渲染优先级最高;离屏幕的可见区域越远的Cell渲染优先级越低。
但是随着列表页的滚动,所创建的空白元素进入屏幕的可见区域内时,还是会创建新的Cell,进而导致需要占用较多内存。
发明内容
本发明提供了一种列表页数据显示方法以及列表页数据显示装置,以解决相关技术中,随着列表页的滚动,所创建的空白元素进入屏幕的可见区域内时,还是会创建新的Cell,进而导致需要占用较多内存的问题。
第一方面,本发明提供了一种列表页数据显示方法,该方法包括:
Native端对位于屏幕的可见区域的组件Cell进行渲染,得到已渲染Cell;
利用所述已渲染Cell显示所述Cell对应的第一列表页数据;
在发生列表页滚动时,所述Native端将回收Cell缓存至回收区,所述回收Cell是指滚动至屏幕的可见区域之外的已渲染Cell;
确定发生列表页滚动后待显示于屏幕的可见区域的第二列表页数据;
如果所述回收区中保存有回收Cell,则利用所述回收Cell显示所述第二列表页数据。
进一步的,所述利用所述回收Cell显示所述第二列表页数据,包括:
判断所述第二列表页数据与所述第一列表页数据是否相同;
在所述第二列表页数据与所述第一列表页数据相同的情况下,利用所述回收cell显示所述第二列表页数据;
在所述第二列表页数据与所述第一列表页数据不相同的情况下,对所述回收cell进行渲染,并利用经过渲染的回收cell显示所述第二列表页数据。
进一步的,所述对所述回收cell进行渲染,并利用经过渲染的回收cell显示所述第二列表页数据,包括:
获取所述回收cell的类型;
根据获取到的所述回收cell的类型,对所述回收cell进行渲染;
利用经过渲染的回收cell显示所述第二列表页数据。
进一步的,所述根据获取到的所述回收cell的类型,对所述回收cell进行渲染,包括:
在所述回收cell的类型为Javascript类型时,所述Native端向Javascript端发送渲染请求,以使所述Javascript端根据所述渲染请求组织所述回收cell的目标样式;
所述Native端根据所述Javascript端发送的目标样式对所述回收cell进行渲染。
进一步的,所述根据获取到的所述回收cell的类型,对所述回收cell进行渲染,包括:
在所述回收cell的类型为Native类型时,所述Native端对所述回收cell进行渲染。
第二方面,本发明还提供了一种列表页数据显示装置,包括:
渲染模块,用于Native端对位于屏幕的可见区域的组件Cell进行渲染,得到已渲染Cell;
第一显示模块,用于利用所述已渲染Cell显示所述Cell对应的第一列表页数据;
缓存模块,用于在发生列表页滚动时,所述Native端将回收Cell缓存至回收区,所述回收Cell是指滚动至屏幕的可见区域之外的已渲染Cell;
确定模块,用于确定发生列表页滚动后待显示于屏幕的可见区域的第二列表页数据;
第二显示模块,用于如果所述回收区中保存有回收Cell,则利用所述回收Cell显示所述第二列表页数据。
进一步的,所述第二显示模块包括:
判断子模块,用于判断所述第二列表页数据与所述第一列表页数据是否相同;
第一显示子模块,用于在所述第二列表页数据与所述第一列表页数据相同的情况下,利用所述回收cell显示所述第二列表页数据;
第二显示子模块,用于在所述第二列表页数据与所述第一列表页数据不相同的情况下,对所述回收cell进行渲染,并利用经过渲染的回收cell显示所述第二列表页数据。
进一步的,所述第二显示子模块包括:
获取单元,用于获取所述回收cell的类型;
渲染单元,用于根据获取到的所述回收cell的类型,对所述回收cell进行渲染;
显示单元,用于利用经过渲染的回收cell显示所述第二列表页数据。
进一步的,所述渲染单元包括:
发送子单元,用于在所述回收cell的类型为Javascript类型时,所述Native端向Javascript端发送渲染请求,以使所述Javascript端根据所述渲染请求组织所述回收cell的目标样式;
渲染子单元,用于所述Native端根据所述Javascript端发送的目标样式对所述回收cell进行渲染。
进一步的,所述渲染单元用于在所述回收cell的类型为Native类型时,所述Native端对所述回收cell进行渲染。
第三方面,本发明还提供了一种电子设备,包括:
存储器,用于存储程序指令;
处理器,用于调用并执行所述存储器中的程序指令,以实现上述列表页数据显示方法。
第四方面,本发明还提供了一种可读存储介质,包括:所述可读存储介质中存储有计算机程序,当列表页数据显示装置的至少一个处理器执行所述计算机程序时,列表页数据显示装置执行第一方面所述的列表页数据显示方法。
由以上技术方案可知,本发明实施例提供的一种列表页数据显示方法以及列表页数据显示装置,Native端对位于屏幕的可见区域的组件Cell进行渲染,得到已渲染Cell;利用所述已渲染Cell显示所述Cell对应的第一列表页数据;在发生列表页滚动时,所述Native端将回收Cell缓存至回收区,所述回收Cell是指滚动至屏幕的可见区域之外的已渲染Cell;确定发生列表页滚动后待显示于屏幕的可见区域的第二列表页数据;如果所述回收区中保存有回收Cell,则利用所述回收Cell显示所述第二列表页数据。这样,在发生列表页滚动时,Native端可以将回收Cell缓存至回收区,进而可以确定发生列表页滚动后待显示于屏幕的可见区域的第二列表页数据。如果回收区中保存有回收Cell,则可以利用回收Cell显示第二列表页数据。在发生列表页滚动,且需要显示新的列表页数据时,可以利用回收区中的回收Cell显示新的列表页数据,无需创建新的Cell,节省内存。
附图说明
为了更清楚地说明本发明的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的一种列表页数据显示方法的流程图;
图2为本发明提供的另一种列表页数据显示方法的流程图;
图3为本发明提供的另一种列表页数据显示方法的流程图;
图4为本发明提供的一种列表页数据显示的过程示意图;
图5为本发明提供的一种列表页数据显示装置的结构图;
图6为本发明提供的另一种列表页数据显示装置的结构图;
图7为本发明提供的另一种列表页数据显示装置的结构图;
图8为本发明提供的另一种列表页数据显示装置的结构图;
图9为本发明提供的电子设备的硬件结构示意图。
具体实施方式
下面将详细地对实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下实施例中描述的实施方式并不代表与本发明相一致的所有实施方式。仅是与权利要求书中所详述的、本发明的一些方面相一致的系统和方法的示例。
参见图1,图1是本发明提供的一种列表页数据显示方法的流程图。如图1所示,包括以下步骤:
步骤101、Native端对位于屏幕的可见区域的组件Cell进行渲染,得到已渲染Cell。
在步骤101中,JavaScript端可以提供数据源和要展示的Cell模版。Cell模版可以是JavaScript模版,也可以是Native模版。JavaScript端可以将数据发送给Native端。Native端可以对位于屏幕的可见区域的Cell进行渲染,得到已渲染Cell。
步骤102、利用所述已渲染Cell显示所述Cell对应的第一列表页数据。
在步骤102中,可以利用已渲染Cell显示上述Cell对应的第一列表页数据。
步骤103、在发生列表页滚动时,所述Native端将回收Cell缓存至回收区,所述回收Cell是指滚动至屏幕的可见区域之外的已渲染Cell。
在步骤103中,在发生列表页滚动时,Native端可以将回收Cell缓存至回收区。其中,回收Cell是指滚动至屏幕的可见区域之外的已渲染Cell。
步骤104、确定发生列表页滚动后待显示于屏幕的可见区域的第二列表页数据。
在步骤104中,在列表页滚动过程中,可以确定发生列表页滚动后待显示于屏幕的可见区域的第二列表页数据。
步骤105、如果所述回收区中保存有回收Cell,则利用所述回收Cell显示所述第二列表页数据。
在步骤105中,如果回收区中保存有回收Cell,则可以利用回收Cell显示第二列表页数据。
需要说明的是,相关技术中,随着列表页的滚动,所创建的空白元素进入屏幕的可见区域内时,还是会创建新的Cell,进而导致需要占用较多内存;而在本发明中,在发生列表页滚动时,Native端可以将回收Cell缓存至回收区,进而可以确定发生列表页滚动后待显示于屏幕的可见区域的第二列表页数据。如果回收区中保存有回收Cell,则可以利用回收Cell显示第二列表页数据。即在发生列表页滚动,且需要显示新的列表页数据时,可以利用回收区中的回收Cell显示新的列表页数据。采用Cell回收重用机制,无需创建新的Cell,节省内存。
且相关技术中,FlatList的大量处理逻辑都是在JavaScript端实现的。JavaScript是单线程,容易出现性能瓶颈。例如用户快速滑动屏幕时,如果在0.016s(一帧)的时间内,没有完成当前屏幕Cell的渲染,就会出现白屏。而在本发明中,大量计算在Native端实现,实现了JavaScript驱动到Native驱动的转变,大幅减少了JavaScript线程的负荷。
相关技术中,FlatList的实现机制导致JavaScript端和Native端交互比较多,线程切换频繁,严重影响性能。而在本发明中,减少了JavaScript端和Native端的交互,避免了不必要的线程切换和数据交互,降低了资源消耗,提高了性能。
由以上技术方案可知,本发明实施例提供的一种列表页数据显示方法,Native端对位于屏幕的可见区域的组件Cell进行渲染,得到已渲染Cell;利用所述已渲染Cell显示所述Cell对应的第一列表页数据;在发生列表页滚动时,所述Native端将回收Cell缓存至回收区,所述回收Cell是指滚动至屏幕的可见区域之外的已渲染Cell;确定发生列表页滚动后待显示于屏幕的可见区域的第二列表页数据;如果所述回收区中保存有回收Cell,则利用所述回收Cell显示所述第二列表页数据。这样,在发生列表页滚动时,Native端可以将回收Cell缓存至回收区,进而可以确定发生列表页滚动后待显示于屏幕的可见区域的第二列表页数据。如果回收区中保存有回收Cell,则可以利用回收Cell显示第二列表页数据。在发生列表页滚动,且需要显示新的列表页数据时,可以利用回收区中的回收Cell显示新的列表页数据,无需创建新的Cell,节省内存。
参见图2,图2是本发明提供的另一种列表页数据显示方法的流程图。本实施例与前一个实施例的主要区别在于可以判断第二列表页数据与第一列表页数据是否相同,进而可以根据判断结果确定是否需要对回收cell进行渲染。如图2所示,包括以下步骤:
步骤201、Native端对位于屏幕的可见区域的组件Cell进行渲染,得到已渲染Cell。
在步骤201中,JavaScript端可以提供数据源和要展示的Cell模版。Cell模版可以是JavaScript模版,也可以是Native模版。JavaScript端可以将数据发送给Native端。Native端可以对位于屏幕的可见区域的Cell进行渲染,得到已渲染Cell。
步骤202、利用所述已渲染Cell显示所述Cell对应的第一列表页数据。
在步骤202中,可以利用已渲染Cell显示上述Cell对应的第一列表页数据。
步骤203、在发生列表页滚动时,所述Native端将回收Cell缓存至回收区,所述回收Cell是指滚动至屏幕的可见区域之外的已渲染Cell。
在步骤203中,在发生列表页滚动时,Native端可以将回收Cell缓存至回收区。其中,回收Cell是指滚动至屏幕的可见区域之外的已渲染Cell。
步骤204、确定发生列表页滚动后待显示于屏幕的可见区域的第二列表页数据。
在步骤204中,在列表页滚动过程中,可以确定发生列表页滚动后待显示于屏幕的可见区域的第二列表页数据。
步骤205、如果所述回收区中保存有回收Cell,判断所述第二列表页数据与所述第一列表页数据是否相同。
在步骤205中,如果回收区中保存有回收Cell,可以判断第二列表页数据与第一列表页数据是否相同,即可以判断数据状态是否发生变化。
步骤206、在所述第二列表页数据与所述第一列表页数据相同的情况下,利用所述回收cell显示所述第二列表页数据。
在步骤206中,在第二列表页数据与第一列表页数据相同的情况下,也即在数据状态没有发生变化的情况下,可以直接利用回收cell显示第二列表页数据。
步骤207、在所述第二列表页数据与所述第一列表页数据不相同的情况下,对所述回收cell进行渲染,并利用经过渲染的回收cell显示所述第二列表页数据。
在步骤207中,在第二列表页数据与第一列表页数据不相同的情况下,也即在数据状态发生变化的情况下,可以对回收cell进行渲染,并利用经过渲染的回收cell显示第二列表页数据。
相关技术中,随着列表页的滚动,所创建的空白元素进入屏幕的可见区域内时,还是会创建新的Cell,进而导致需要占用较多内存;而在本发明中,在发生列表页滚动时,Native端可以将回收Cell缓存至回收区,进而可以确定发生列表页滚动后待显示于屏幕的可见区域的第二列表页数据。如果回收区中保存有回收Cell,则可以利用回收Cell显示第二列表页数据。即在发生列表页滚动,且需要显示新的列表页数据时,可以利用回收区中的回收Cell显示新的列表页数据。采用Cell回收重用机制,无需创建新的Cell,节省内存。
可选的,所述对所述回收cell进行渲染,并利用经过渲染的回收cell显示所述第二列表页数据,包括:
获取所述回收cell的类型;
根据获取到的所述回收cell的类型,对所述回收cell进行渲染;
利用经过渲染的回收cell显示所述第二列表页数据。
进一步的,在对回收cell进行渲染时,可以获取回收cell的类型,进而可以根据获取到的回收cell的类型,对回收cell进行渲染。然后,可以利用经过渲染的回收cell显示第二列表页数据。相关技术中,FlatList的大量处理逻辑都是在JavaScript端实现的。JavaScript是单线程,容易出现性能瓶颈。例如用户快速滑动屏幕时,如果在0.016s(一帧)的时间内,没有完成当前屏幕Cell的渲染,就会出现白屏。而在本发明中,大量计算在Native端实现,实现了JavaScript驱动到Native驱动的转变,大幅减少了JavaScript线程的负荷。
可选的,所述根据获取到的所述回收cell的类型,对所述回收cell进行渲染,包括:
在所述回收cell的类型为Javascript类型时,所述Native端向Javascript端发送渲染请求,以使所述Javascript端根据所述渲染请求组织所述回收cell的目标样式;
所述Native端根据所述Javascript端发送的目标样式对所述回收cell进行渲染。
在回收cell的类型为Javascript类型时,Native端可以向Javascript端发送渲染请求,以使Javascript端根据渲染请求组织回收cell的目标样式。然后,Javascript端可以将组织好的回收cell的目标样式发送给Native端。接下来,Native端可以根据Javascript端发送的目标样式对回收cell进行渲染。
可选的,所述根据获取到的所述回收cell的类型,对所述回收cell进行渲染,包括:
在所述回收cell的类型为Native类型时,所述Native端对所述回收cell进行渲染。
在回收cell的类型为Native类型时,Native端可以直接对回收cell进行渲染,不需要再和Javascript端进行交互。相关技术中,FlatList的实现机制导致JavaScript端和Native端交互比较多,线程切换频繁,严重影响性能。而在本发明中,减少了JavaScript端和Native端的交互,避免了不必要的线程切换和数据交互,降低了资源消耗,提高了性能。
由以上技术方案可知,本发明实施例提供的一种列表页数据显示方法,在发生列表页滚动时,Native端可以将回收Cell缓存至回收区,进而可以确定发生列表页滚动后待显示于屏幕的可见区域的第二列表页数据。如果回收区中保存有回收Cell,可以判断第二列表页数据与第一列表页数据是否相同,进而可以根据判断结果确定是否需要对回收cell进行渲染。在第二列表页数据与第一列表页数据相同的情况下,也即在数据状态没有发生变化的情况下,可以直接利用回收cell显示第二列表页数据;在第二列表页数据与第一列表页数据不相同的情况下,也即在数据状态发生变化的情况下,可以对回收cell进行渲染,并利用经过渲染的回收cell显示第二列表页数据。在发生列表页滚动,且需要显示新的列表页数据时,可以利用回收区中的回收Cell显示新的列表页数据,无需创建新的Cell,节省内存。
参见图3,图3是本发明提供的另一种列表页数据显示方法的流程图。如图3所示,包括以下步骤:
步骤301、JavaScript端可以提供数据源和要展示的Cell模版。Cell模版可以是JavaScript模版,也可以是Native模版。JavaScript端可以将数据发送给Native端。Native端可以对位于屏幕的可见区域的Cell进行渲染,得到已渲染Cell。
步骤302、利用已渲染Cell显示上述Cell对应的第一列表页数据。
步骤303、在发生列表页滚动时,Native端可以将回收Cell缓存至回收区。其中,回收Cell是指滚动至屏幕的可见区域之外的已渲染Cell。
步骤304、在列表页滚动过程中,需要展示新Cell时,优先从回收区获取已缓存的回收Cell。
步骤305、从回收区获取回收Cell后,判断数据状态是否发生变化。
步骤306、如果数据状态没有发生变化,可以直接利用回收cell显示新的列表页数据。
步骤307、如果数据状态发生了变化,对回收Cell重新进行渲染。
步骤308、在回收cell的类型为Javascript类型时,Native端可以向Javascript端发送渲染请求,以使Javascript端根据渲染请求组织回收cell的目标样式。然后,Javascript端可以将组织好的回收cell的目标样式发送给Native端。接下来,Native端可以根据Javascript端发送的目标样式对回收cell进行渲染。
步骤309、在回收cell的类型为Native类型时,Native端可以直接对回收cell进行渲染,不需要再和Javascript端进行交互。
步骤3010、利用经过渲染的回收cell显示新的列表页数据。如图4所示,为一种列表页数据显示的过程示意图。
在本发明中,在发生列表页滚动时,Native端可以将回收Cell缓存至回收区,进而可以确定发生列表页滚动后待显示于屏幕的可见区域的第二列表页数据。如果回收区中保存有回收Cell,则可以利用回收Cell显示第二列表页数据。即在发生列表页滚动,且需要显示新的列表页数据时,可以利用回收区中的回收Cell显示新的列表页数据。采用Cell回收重用机制,无需创建新的Cell,节省内存。大量计算在Native端实现,实现了JavaScript驱动到Native驱动的转变,大幅减少了JavaScript线程的负荷。减少了JavaScript端和Native端的交互,避免了不必要的线程切换和数据交互,降低了资源消耗,提高了性能。在渲染Cell时,采用了异步渲染技术。在列表页快速滚动时,新的渲染任务开始前,可以取消上一次未开始的渲染任务或者终止上一次未完成的渲染任务。减少不必要的渲染工作,提高列表页的滚动流畅度。
参见图5,图5是本发明提供的一种列表页数据显示装置的结构图。如图5所示,列表页数据显示装置500包括渲染模块501、第一显示模块502、缓存模块503、确定模块504和第二显示模块505,其中:
渲染模块501,用于Native端对位于屏幕的可见区域的组件Cell进行渲染,得到已渲染Cell;第一显示模块502,用于利用所述已渲染Cell显示所述Cell对应的第一列表页数据;缓存模块503,用于在发生列表页滚动时,所述Native端将回收Cell缓存至回收区,所述回收Cell是指滚动至屏幕的可见区域之外的已渲染Cell;确定模块504,用于确定发生列表页滚动后待显示于屏幕的可见区域的第二列表页数据;第二显示模块505,用于如果所述回收区中保存有回收Cell,则利用所述回收Cell显示所述第二列表页数据。
可选的,如图6所示,所述第二显示模块505包括:
判断子模块5051,用于判断所述第二列表页数据与所述第一列表页数据是否相同;第一显示子模块5052,用于在所述第二列表页数据与所述第一列表页数据相同的情况下,利用所述回收cell显示所述第二列表页数据;第二显示子模块5053,用于在所述第二列表页数据与所述第一列表页数据不相同的情况下,对所述回收cell进行渲染,并利用经过渲染的回收cell显示所述第二列表页数据。
可选的,如图7所示,所述第二显示子模块5053包括:
获取单元50531,用于获取所述回收cell的类型;渲染单元50532,用于根据获取到的所述回收cell的类型,对所述回收cell进行渲染;显示单元50533,用于利用经过渲染的回收cell显示所述第二列表页数据。
可选的,如图8所示,所述渲染单元50532包括:
发送子单元505321,用于在所述回收cell的类型为Javascript类型时,所述Native端向Javascript端发送渲染请求,以使所述Javascript端根据所述渲染请求组织所述回收cell的目标样式;渲染子单元505322,用于所述Native端根据所述Javascript端发送的目标样式对所述回收cell进行渲染。
可选的,所述渲染单元50532用于在所述回收cell的类型为Native类型时,所述Native端对所述回收cell进行渲染。
列表页数据显示装置500能够实现图1-图3的方法实施例中列表页数据显示装置实现的各个过程,为避免重复,这里不再赘述。且列表页数据显示装置500可以实现在发生列表页滚动时,Native端可以将回收Cell缓存至回收区,进而可以确定发生列表页滚动后待显示于屏幕的可见区域的第二列表页数据。如果回收区中保存有回收Cell,则可以利用回收Cell显示第二列表页数据。在发生列表页滚动,且需要显示新的列表页数据时,可以利用回收区中的回收Cell显示新的列表页数据,无需创建新的Cell,节省内存。
图9为本发明实施例提供的电子设备的硬件结构示意图。如图9所示,该电子设备,包括:
存储器901,用于存储程序指令;
处理器902,用于调用并执行所述存储器中的程序指令,以实现上述实施例中所述列表页数据显示方法。具体可以参见前述实施例中的相关描述。
本实施例中,处理器902和存储器901可通过总线或其他方式连接。处理器可以是通用处理器,例如中央处理器、数字信号处理器、专用集成电路,或者被配置成实施本发明实施例的一个或多个集成电路。存储器可以包括易失性存储器,例如随机存取存储器;存储器也可以包括非易失性存储器,例如只读存储器、快闪存储器、硬盘或固态硬盘。
本发明实施例还提供了一种可读存储介质,包括:所述可读存储介质中存储有计算机程序,当列表页数据显示装置的至少一个处理器执行所述计算机程序时,列表页数据显示装置执行上述实施例中所述的列表页数据显示方法。
所述的可读存储介质可为磁碟、光盘、只读存储记忆体(英文:read-only memory,简称:ROM)或随机存储记忆体(英文:random access memory,简称:RAM)等。
本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本说明书中各个实施例之间相同相似的部分互相参见即可。尤其,对于列表页数据显示装置、电子设备及可读存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例中的说明即可。
以上所述的本发明实施方式并不构成对本发明保护范围的限定。

Claims (12)

1.一种列表页数据显示方法,其特征在于,包括:
Native端对位于屏幕的可见区域的组件Cell进行渲染,得到已渲染Cell;
利用所述已渲染Cell显示所述Cell对应的第一列表页数据;
在发生列表页滚动时,所述Native端将回收Cell缓存至回收区,所述回收Cell是指滚动至屏幕的可见区域之外的已渲染Cell;
确定发生列表页滚动后待显示于屏幕的可见区域的第二列表页数据;
如果所述回收区中保存有回收Cell,则利用所述回收Cell显示所述第二列表页数据。
2.如权利要求1所述的方法,其特征在于,所述利用所述回收Cell显示所述第二列表页数据,包括:
判断所述第二列表页数据与所述第一列表页数据是否相同;
在所述第二列表页数据与所述第一列表页数据相同的情况下,利用所述回收cell显示所述第二列表页数据;
在所述第二列表页数据与所述第一列表页数据不相同的情况下,对所述回收cell进行渲染,并利用经过渲染的回收cell显示所述第二列表页数据。
3.如权利要求2所述的方法,其特征在于,所述对所述回收cell进行渲染,并利用经过渲染的回收cell显示所述第二列表页数据,包括:
获取所述回收cell的类型;
根据获取到的所述回收cell的类型,对所述回收cell进行渲染;
利用经过渲染的回收cell显示所述第二列表页数据。
4.如权利要求3所述的方法,其特征在于,所述根据获取到的所述回收cell的类型,对所述回收cell进行渲染,包括:
在所述回收cell的类型为Javascript类型时,所述Native端向Javascript端发送渲染请求,以使所述Javascript端根据所述渲染请求组织所述回收cell的目标样式;
所述Native端根据所述Javascript端发送的目标样式对所述回收cell进行渲染。
5.如权利要求3所述的方法,其特征在于,所述根据获取到的所述回收cell的类型,对所述回收cell进行渲染,包括:
在所述回收cell的类型为Native类型时,所述Native端对所述回收cell进行渲染。
6.一种列表页数据显示装置,其特征在于,包括:
渲染模块,用于Native端对位于屏幕的可见区域的组件Cell进行渲染,得到已渲染Cell;
第一显示模块,用于利用所述已渲染Cell显示所述Cell对应的第一列表页数据;
缓存模块,用于在发生列表页滚动时,所述Native端将回收Cell缓存至回收区,所述回收Cell是指滚动至屏幕的可见区域之外的已渲染Cell;
确定模块,用于确定发生列表页滚动后待显示于屏幕的可见区域的第二列表页数据;
第二显示模块,用于如果所述回收区中保存有回收Cell,则利用所述回收Cell显示所述第二列表页数据。
7.如权利要求6所述的列表页数据显示装置,其特征在于,所述第二显示模块包括:
判断子模块,用于判断所述第二列表页数据与所述第一列表页数据是否相同;
第一显示子模块,用于在所述第二列表页数据与所述第一列表页数据相同的情况下,利用所述回收cell显示所述第二列表页数据;
第二显示子模块,用于在所述第二列表页数据与所述第一列表页数据不相同的情况下,对所述回收cell进行渲染,并利用经过渲染的回收cell显示所述第二列表页数据。
8.如权利要求7所述的列表页数据显示装置,其特征在于,所述第二显示子模块包括:
获取单元,用于获取所述回收cell的类型;
渲染单元,用于根据获取到的所述回收cell的类型,对所述回收cell进行渲染;
显示单元,用于利用经过渲染的回收cell显示所述第二列表页数据。
9.如权利要求8所述的列表页数据显示装置,其特征在于,所述渲染单元包括:
发送子单元,用于在所述回收cell的类型为Javascript类型时,所述Native端向Javascript端发送渲染请求,以使所述Javascript端根据所述渲染请求组织所述回收cell的目标样式;
渲染子单元,用于所述Native端根据所述Javascript端发送的目标样式对所述回收cell进行渲染。
10.如权利要求8所述的列表页数据显示装置,其特征在于,所述渲染单元用于在所述回收cell的类型为Native类型时,所述Native端对所述回收cell进行渲染。
11.一种电子设备,其特征在于,包括:
存储器,用于存储程序指令;
处理器,用于调用并执行所述存储器中的程序指令,以实现权利要求1~5任一项所述的列表页数据显示方法。
12.一种可读存储介质,其特征在于,所述可读存储介质中存储有计算机程序,当列表页数据显示装置的至少一个处理器执行所述计算机程序时,列表页数据显示装置执行权利要求1~5任一项所述的列表页数据显示方法。
CN201910349829.5A 2019-04-28 2019-04-28 一种列表页数据显示方法以及列表页数据显示装置 Active CN110209447B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910349829.5A CN110209447B (zh) 2019-04-28 2019-04-28 一种列表页数据显示方法以及列表页数据显示装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910349829.5A CN110209447B (zh) 2019-04-28 2019-04-28 一种列表页数据显示方法以及列表页数据显示装置

Publications (2)

Publication Number Publication Date
CN110209447A true CN110209447A (zh) 2019-09-06
CN110209447B CN110209447B (zh) 2023-02-28

Family

ID=67786585

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910349829.5A Active CN110209447B (zh) 2019-04-28 2019-04-28 一种列表页数据显示方法以及列表页数据显示装置

Country Status (1)

Country Link
CN (1) CN110209447B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111290680A (zh) * 2020-01-21 2020-06-16 腾讯科技(深圳)有限公司 列表显示方法、装置、终端及存储介质
CN113626113A (zh) * 2020-05-08 2021-11-09 北京沃东天骏信息技术有限公司 一种页面渲染方法和装置
CN115344167A (zh) * 2022-08-24 2022-11-15 北京字跳网络技术有限公司 用于管理视图单元的方法、装置、设备和介质

Citations (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102486734A (zh) * 2010-12-03 2012-06-06 上海宝信软件股份有限公司 一种富客户端应用系统
CN103941964A (zh) * 2014-05-13 2014-07-23 上海天奕达电子科技有限公司 一种基于桌面组件的信息加载方法及智能终端
CN104156150A (zh) * 2014-07-22 2014-11-19 乐视网信息技术(北京)股份有限公司 显示图片的方法和装置
CN104657378A (zh) * 2013-11-20 2015-05-27 青岛海信移动通信技术股份有限公司 一种文件缓存方法及装置
US20160041954A1 (en) * 2014-08-05 2016-02-11 Weebly, Inc. Native Overlay for Rapid Editing of Web Content
CN105354014A (zh) * 2014-08-18 2016-02-24 阿里巴巴集团控股有限公司 应用界面渲染展示方法及装置
CN105630411A (zh) * 2015-12-18 2016-06-01 小米科技有限责任公司 内存管理方法及装置
CN106502662A (zh) * 2016-10-17 2017-03-15 北京智能管家科技有限公司 用于智能操作系统的多区域图形绘制方法及装置
CN106713967A (zh) * 2016-12-09 2017-05-24 武汉斗鱼网络科技有限公司 一种基于React Native的虚拟礼物展示方法
CN106919383A (zh) * 2017-01-26 2017-07-04 武汉奇米网络科技有限公司 一种Android商品列表的展示方法及系统
US20170205421A1 (en) * 2016-01-15 2017-07-20 University Of Washington Synthetic yeast agglutination
CN107168755A (zh) * 2017-03-30 2017-09-15 武汉斗鱼网络科技有限公司 一种应用软件内存占用优化方法及系统
CN107577509A (zh) * 2017-08-28 2018-01-12 深圳市金立通信设备有限公司 一种加载应用界面的方法、终端及计算机可读存储介质
CN107632869A (zh) * 2017-09-15 2018-01-26 百富计算机技术(深圳)有限公司 一种加载pos应用的用户界面的方法与设备
CN107770375A (zh) * 2017-10-17 2018-03-06 广东广业开元科技有限公司 一种基于html5创建手机新闻客户端的方法
CN107920258A (zh) * 2016-10-11 2018-04-17 中国移动通信有限公司研究院 一种数据处理方法及装置
CN107943552A (zh) * 2017-11-16 2018-04-20 腾讯科技(成都)有限公司 一种移动终端的页面切换方法和移动终端
CN108228253A (zh) * 2017-12-29 2018-06-29 武汉璞华大数据技术有限公司 一种app构建方法及系统
CN108459854A (zh) * 2017-02-20 2018-08-28 平安科技(深圳)有限公司 移动终端样式配置方法和装置
CN108469970A (zh) * 2017-02-17 2018-08-31 阿里巴巴集团控股有限公司 页面选项卡信息处理方法及装置
CN108536361A (zh) * 2018-04-03 2018-09-14 网易(杭州)网络有限公司 触控操作的处理方法、装置、存储介质、处理器及终端
US20190024097A1 (en) * 2017-07-21 2019-01-24 Conagen Inc. Plasmid addiction system to drive desired gene expression
CN109542578A (zh) * 2018-11-30 2019-03-29 北京微播视界科技有限公司 一种列表界面的显示方法、装置、设备及存储介质
CN109542878A (zh) * 2018-11-21 2019-03-29 广州华多网络科技有限公司 一种列表创建方法及装置
CN109614194A (zh) * 2018-12-11 2019-04-12 北京微播视界科技有限公司 列表界面的显示方法、装置、设备及存储介质
CN109684000A (zh) * 2018-09-07 2019-04-26 平安科技(深圳)有限公司 App数据显示方法、装置、设备及计算机可读存储介质
CN109684574A (zh) * 2018-08-20 2019-04-26 平安普惠企业管理有限公司 页面加载方法、装置、设备及存储介质

Patent Citations (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102486734A (zh) * 2010-12-03 2012-06-06 上海宝信软件股份有限公司 一种富客户端应用系统
CN104657378A (zh) * 2013-11-20 2015-05-27 青岛海信移动通信技术股份有限公司 一种文件缓存方法及装置
CN103941964A (zh) * 2014-05-13 2014-07-23 上海天奕达电子科技有限公司 一种基于桌面组件的信息加载方法及智能终端
CN104156150A (zh) * 2014-07-22 2014-11-19 乐视网信息技术(北京)股份有限公司 显示图片的方法和装置
US20160041954A1 (en) * 2014-08-05 2016-02-11 Weebly, Inc. Native Overlay for Rapid Editing of Web Content
CN105354014A (zh) * 2014-08-18 2016-02-24 阿里巴巴集团控股有限公司 应用界面渲染展示方法及装置
CN105630411A (zh) * 2015-12-18 2016-06-01 小米科技有限责任公司 内存管理方法及装置
US20170205421A1 (en) * 2016-01-15 2017-07-20 University Of Washington Synthetic yeast agglutination
CN107920258A (zh) * 2016-10-11 2018-04-17 中国移动通信有限公司研究院 一种数据处理方法及装置
CN106502662A (zh) * 2016-10-17 2017-03-15 北京智能管家科技有限公司 用于智能操作系统的多区域图形绘制方法及装置
CN106713967A (zh) * 2016-12-09 2017-05-24 武汉斗鱼网络科技有限公司 一种基于React Native的虚拟礼物展示方法
CN106919383A (zh) * 2017-01-26 2017-07-04 武汉奇米网络科技有限公司 一种Android商品列表的展示方法及系统
CN108469970A (zh) * 2017-02-17 2018-08-31 阿里巴巴集团控股有限公司 页面选项卡信息处理方法及装置
CN108459854A (zh) * 2017-02-20 2018-08-28 平安科技(深圳)有限公司 移动终端样式配置方法和装置
CN107168755A (zh) * 2017-03-30 2017-09-15 武汉斗鱼网络科技有限公司 一种应用软件内存占用优化方法及系统
US20190024097A1 (en) * 2017-07-21 2019-01-24 Conagen Inc. Plasmid addiction system to drive desired gene expression
CN107577509A (zh) * 2017-08-28 2018-01-12 深圳市金立通信设备有限公司 一种加载应用界面的方法、终端及计算机可读存储介质
CN107632869A (zh) * 2017-09-15 2018-01-26 百富计算机技术(深圳)有限公司 一种加载pos应用的用户界面的方法与设备
CN107770375A (zh) * 2017-10-17 2018-03-06 广东广业开元科技有限公司 一种基于html5创建手机新闻客户端的方法
CN107943552A (zh) * 2017-11-16 2018-04-20 腾讯科技(成都)有限公司 一种移动终端的页面切换方法和移动终端
CN108228253A (zh) * 2017-12-29 2018-06-29 武汉璞华大数据技术有限公司 一种app构建方法及系统
CN108536361A (zh) * 2018-04-03 2018-09-14 网易(杭州)网络有限公司 触控操作的处理方法、装置、存储介质、处理器及终端
CN109684574A (zh) * 2018-08-20 2019-04-26 平安普惠企业管理有限公司 页面加载方法、装置、设备及存储介质
CN109684000A (zh) * 2018-09-07 2019-04-26 平安科技(深圳)有限公司 App数据显示方法、装置、设备及计算机可读存储介质
CN109542878A (zh) * 2018-11-21 2019-03-29 广州华多网络科技有限公司 一种列表创建方法及装置
CN109542578A (zh) * 2018-11-30 2019-03-29 北京微播视界科技有限公司 一种列表界面的显示方法、装置、设备及存储介质
CN109614194A (zh) * 2018-12-11 2019-04-12 北京微播视界科技有限公司 列表界面的显示方法、装置、设备及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
张敏 等: ""基于LOD纹理映射的三维场景实时渲染技术"", 《闽江学院院报》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111290680A (zh) * 2020-01-21 2020-06-16 腾讯科技(深圳)有限公司 列表显示方法、装置、终端及存储介质
CN111290680B (zh) * 2020-01-21 2021-10-22 腾讯科技(深圳)有限公司 列表显示方法、装置、终端及存储介质
CN113626113A (zh) * 2020-05-08 2021-11-09 北京沃东天骏信息技术有限公司 一种页面渲染方法和装置
CN113626113B (zh) * 2020-05-08 2024-04-05 北京沃东天骏信息技术有限公司 一种页面渲染方法和装置
CN115344167A (zh) * 2022-08-24 2022-11-15 北京字跳网络技术有限公司 用于管理视图单元的方法、装置、设备和介质

Also Published As

Publication number Publication date
CN110209447B (zh) 2023-02-28

Similar Documents

Publication Publication Date Title
CN110209447A (zh) 一种列表页数据显示方法以及列表页数据显示装置
CN108595242B (zh) 页面显示方法、电子设备及计算机存储介质
US8941663B2 (en) Method and device for rendering user interface font
CN109542382B (zh) 手写输入内容的显示方法、电子设备及计算机存储介质
US8516389B2 (en) Re-using a display element associated with a first cell for a second cell
US20150026566A1 (en) Systems and methods to prioritize browser tile generation from lq tile content
CN110221889B (zh) 一种页面展示方法、装置、电子设备及存储介质
CN105335410B (zh) 一种基于合成渲染加速的网页更新方法和装置
CN105824874A (zh) 移动终端及其网页渲染方法、装置
CN112596845A (zh) 一种页面切换的方法、装置、服务器和存储介质
CN106681792A (zh) 浏览器内核的切换方法及其装置、电子设备
US11790824B2 (en) Display method, display device, and display apparatus
CN114071047A (zh) 帧率控制方法及相关装置
CN110187932A (zh) 一种业务数据页面加载方法及系统
US9612734B1 (en) Random access browser scrolling for large pages
CN107291506A (zh) 一种更新app界面的方法和装置
CN108052546A (zh) 一种在移动终端浏览图片的方法及移动终端
JP2011511991A (ja) グラフィックディジタル文書の動画化装置および方法
CN110442400A (zh) 浏览器控制方法及装置
CN105843751A (zh) 图像显示方法、装置和移动终端
CN106095411A (zh) 显示方法及终端
CN113608809B (zh) 组件的布局方法、装置、设备、存储介质及程序产品
CN112181596B (zh) 一种虚拟机克隆方法、装置、设备及存储介质
CN115203603A (zh) 表格页面渲染方法、装置、电子装置和存储介质
CN109885227A (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