应用程序列表页的处理方法、装置和终端与流程

文档序号:14571754发布日期:2018-06-01 22:36阅读:109来源:国知局
应用程序列表页的处理方法、装置和终端与流程

本发明涉及通信工程技术,尤其涉及一种应用程序列表页的处理方法、装置和终端。



背景技术:

随着移动互联网的飞速发展,越来越多的手机应用程序(Application,简称APP)在各大手机应用商店层出不穷,用户足不出户就能通过手机APP了解到世界各地的信息。

目前大部分的手机App都是通过列表页和详情页的形式为用户呈现数据和信息。其中,列表页的内容丰富多样,有文字有图片甚至有视频。对于一些列表页复杂数据量庞大的应用程序的页面来说,当用户快速滑动列表页进行浏览时,会出现列表页卡顿等滑动不顺畅的性能问题,影响了用户的使用体验。



技术实现要素:

本发明提供一种应用程序列表页的处理方法、装置和终端,以克服现有技术中用户快速滑动列表页进行浏览时,出现的列表页卡顿等滑动不顺畅的技术问题。

本发明提供一种应用程序列表页的处理方法,所述列表页包括多行列表行,包括:

根据用户输入的列表页滑动指令,获取滑动开始时所述用户选中的当前列表行与滑动结束时对应的目标列表行之间的行数;所述目标列表行为滑动结束时所述列表页对应的显示页面的最后一行列表行;

判断所述目标列表行与所述当前列表行之间的行数是否大于或等于预设值M;

若是,则创建滑动开始时所述列表页对应的显示页面与滑动结束时所述列表页对应的显示页面之间的各第一列表行,以及滑动结束时所述列表页对应的显示页面的各第二列表行,加载并绘制所述目标列表行之前的N行列表行各自的内容,得到滑动结束时所述列表页对应的显示页面;

其中,N<M,N和M均为正整数。

如上所述的方法,若所述目标列表行与所述当前列表行之间的行数小于预设值M,

则创建滑动开始时所述列表页对应的显示页面与滑动结束时所述列表页对应的显示页面之间的各第一列表行,以及滑动结束时所述列表页对应的显示页面的各第二列表行,加载并绘制各所述第一列表行和各所述第二列表行各自的内容,得到滑动结束时所述列表页对应的显示页面。

如上所述的方法,所述加载并绘制所述目标列表行之前的N行列表行各自的内容,包括:

对于每一个第三列表行,在所述第三列表行的视图层上添加图片层,所述第三列表行为所述目标列表行之前的N行列表行中的任一列表行;

从服务器获取所述第三列表行的内容;

加载所述第三列表行的内容,并将所述第三列表行的内容异步绘制在所述图片层上。

如上所述的方法,所述创建滑动开始时所述列表页对应的显示页面与滑动结束时所述列表页对应的显示页面之间的各第一列表行,以及滑动结束时所述列表页对应的显示页面的各第二列表行,包括:

对于每一个第四列表行,获取所述第四列表行的内容的布局和终端内存储的所述第四列表行的行高;所述第四列表行为各所述第一列表行或各所述第二列表行中的任一列表行;

根据所述行高和所述布局新建列表行,得到所述第四列表行。

如上所述的方法,在根据所述行高和所述布局新建列表行,得到所述第四列表行之前,还包括:

检测与所述列表页对应的已建好的列表行中是否存在与所述第四列表行的内容的布局和行高相同的备用列表行,得到的检测结果为否。

如上所述的方法,所述创建滑动开始时所述列表页对应的显示页面与滑动结束时所述列表页对应的显示页面之间的各第一列表行,以及滑动结束时所述列表页对应的显示页面的各第二列表行,包括:

对于每一个第四列表行,获取所述第四列表行的内容的布局和终端内存储的所述第四列表行的行高;所述第四列表行为各所述第一列表行或各所述第二列表行中的任一列表行;

当检测到与所述列表页对应的已建好的列表行中存在与所述第四列表行的内容的布局和行高相同的备用列表行时,复用所述备用列表行,得到第四列表行。

本发明还提供一种应用程序列表页的处理装置,所述列表页包括多行列表行,包括:

获取模块,用于根据用户输入的列表页滑动指令,获取滑动开始时所述用户选中的当前列表行与滑动结束时对应的目标列表行之间的行数;所述目标列表行为滑动结束时所述列表页对应的显示页面的最后一行列表行;

判断模块,用于判断所述目标列表行与所述当前列表行之间的行数是否大于或等于预设值M;

处理模块,用于若所述目标列表行与所述当前列表行之间的行数大于或等于预设值M时,创建滑动开始时所述列表页对应的显示页面与滑动结束时所述列表页对应的显示页面之间的各第一列表行,以及滑动结束时所述列表页对应的显示页面的各第二列表行,加载并绘制所述目标列表行之前的N行列表行各自的内容,得到滑动结束时所述列表页对应的显示页面;

其中,N<M,N和M均为正整数。

如上所述的装置,所述处理模块具体用于,

对于每一个第三列表行,在所述第三列表行的视图层上添加图片层,所述第三列表行为所述目标列表行之前的N行列表行中的任一列表行;

从服务器获取第三列表行的内容;

加载所述第三列表行的内容,并将所述第三列表行的内容异步绘制在所述图片层上。

如上所述的装置,所述处理模块具体用于,

对于每一个第四列表行,获取所述第四列表行的内容的布局和终端内存储的所述第四列表行的行高;所述第四列表行为各所述第一列表行或各所述第二列表行中的任一列表行;

根据所述行高和所述布局新建列表行,得到所述第四列表行。

本发明还提供一种终端,包括:如上任一所述的应用程序列表页的处理装置。

本发明的应用程序列表页的处理方法包括:根据用户输入的列表页滑动指令,获取滑动开始时用户选中的当前列表行与滑动结束时对应的目标列表行之间的行数,目标列表行为滑动结束时该列表页对应的显示页面的最后一行列表行;判断目标列表行与当前列表行之间的行数是否大于或等于预设值M;若目标列表行与当前列表行之间的行数大于或等于预设值M,则创建滑动开始时列表页对应的显示页面与滑动结束时列表页对应的显示页面之间的各第一列表行,以及滑动结束时列表页对应的显示页面的各第二列表行,加载并绘制目标列表行之前的N行列表行各自的内容,得到滑动结束时列表页对应的显示页面,其中,N<M。本发明的应用程序列表页的处理方法使得用户在快速滑动浏览列表页时,不会出现卡顿的现象,提升了用户的使用体验。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明提供的应用程序列表页的处理方法的流程图一;

图2为本发明提供的列表页的示意图;

图3为本发明提供的详情页的示意图;

图4为本发明提供的应用程序列表页的处理方法的流程图二;

图5为本发明提供的应用程序列表页的处理方法的流程图三;

图6为本发明提供的应用程序列表页的处理装置实施例一的结构示意图;

图7为本发明提供的应用程序列表页的处理装置实施例二的结构示意图;

图8为本发明提供的终端的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

图1为本发明提供的应用程序列表页的处理方法的流程图一,如图1所示,本实施例的方法可以包括:

步骤S101、根据用户输入的列表页滑动指令,获取滑动开始时用户选中的当前列表行与滑动结束时对应的目标列表行之间的行数;目标列表行为滑动结束时该列表页对应的显示页面的最后一行列表行;

步骤S102、判断目标列表行与当前列表行之间的行数是否大于或等于预设值M,M为正整数;

步骤S103、若目标列表行与当前列表行之间的行数大于或等于预设值M,则创建滑动开始时列表页对应的显示页面与滑动结束时列表页对应的显示页面之间的各第一列表行,以及滑动结束时列表页对应的显示页面的各第二列表行,加载并绘制目标列表行之前的N行列表行各自的内容,得到滑动结束时列表页对应的显示页面,其中,N<M,N为正整数;

步骤S104、若目标列表行与当前列表行之间的行数小于预设值M,创建滑动开始时列表页对应的显示页面与滑动结束时列表页对应的显示页面之间的各第一列表行,以及滑动结束时列表页对应的显示页面的各第二列表行,加载并绘制各第一列表行和各第二列表行各自的内容,得到滑动结束时列表页对应的显示页面;

具体地,本实施例的执行主体可为终端,终端可包括但不限于手机、平板电脑等。

应用程序的显示页面包括列表页和详情页,列表页中包括多行列表行,每一行列表行内具有图片和/或文字等内容,用户通过点击列表页中列表行的内容进入该列表行指示的内容的详情页。

图2为本发明提供的列表页的示意图,图3为本发明提供的详情页的示意图。

参见图2~图3,图2中显示有列表行201、列表行的内容202,当用户选中某一列表行后,终端显示该列表行指示的内容的详情页,如图3所示。

当用户滑动列表页时,终端接收到用户输入的列表页滑动指令,根据接收到的列表页滑动指令,获取滑动开始时用户选中的当前列表行与滑动结束时对应的目标列表行之间的行数;其中,用户选中的当前列表行是指用户的手指触摸的列表行,目标列表行为滑动结束时该列表页对应的显示页面的最后一行列表行。

本领域技术人员可以理解的是,在用户输入列表页滑动指令的瞬间,终端便可根据用户滑动列表页的力度(按压屏幕的力)立即可获知滑动结束时对应的目标列表行,从而获取到当前列表行与目标列表行之间的行数。也就是获取滑动开始时用户选中的当前列表行与滑动结束时对应的目标列表行之间的行数,是在获取到用户输入的列表页滑动指令的瞬间完成的,并不是等到列表页停止滑动后才完成。

接着,判断目标列表行与当前列表行之间的行数是否大于或等于预设值M。其中,预设值M可根据列表页中各列表行的各自行高以及终端显示界面可以同时显示的行数来确定。

若目标列表行与当前列表行之间的行数小于预设值M,则创建滑动开始时列表页对应的显示页面与滑动结束时列表页对应的显示页面之间的各第一列表行,以及滑动结束时列表页对应的显示页面的各第二列表行,加载并绘制各第一列表行和各第二列表行各自的内容,得到滑动结束时列表页对应的显示页面。

具体地,若目标列表行与当前列表行之间的行数小于预设值M,可以认为用户滑动列表页的速度比较慢,不会出现在短时间内加载很多数据的情况,因此,可加载并绘制各第一列表行和各第二列表行各自的内容,得到滑动结束时列表页对应的显示页面。

若目标列表行与当前列表行之间的行数大于或等于预设值M,则创建滑动开始时列表页对应的显示页面与滑动结束时列表页对应的显示页面之间的各第一列表行,以及滑动结束时列表页对应的显示页面的各第二列表行,加载并绘制目标列表行之前的N行列表行各自的内容,得到滑动结束时列表页对应的显示页面;其中,N<M,N为正整数。

具体地,若目标列表行与当前列表行之间的行数大于或等于预设值M,则可认为用户在快速滑动列表页,只加载并绘制目标列表行之前的N行列表行各自的内容,得到滑动结束时列表页对应的显示页面;其中,目标列表行之前的N行列表行包括目标列列表行。

本领域技术人员应该明白,目标列表行之前的N行列表行为各第一列表行和各第二列表行中的列表行。

下面结合实例对“创建目标列表行之前的N行列表行,加载并绘制目标列表行之前的N行列表行各自的内容,得到滑动结束时列表页对应的显示页面”的过程进行说明。

比如说,若终端可同时显示3行列表行,则N不小于3,优选为N=3或N=4。若N=3,且用户向下滑动列表页,终端先创建目标列表行之前第2行的列表行,从服务器获取目标列表行之前第二行的内容,加载目标列表行之前第2列表行(与目标列表行之间相隔1行)的内容并将其绘制在目标列表行之前第2列表行内;接着创建目标列表行之前第1列表行(与目标列表行相邻),从服务器获取目标列表行之前第1列表行的内容,加载目标列表行之前第1列表行的内容并将其绘制在目标列表行之前第1列表行内;接着创建目标列表行,从服务器获取创建目标列表行的显示内容,加载目标列表行的内容并将其绘制在目标列表行内,得到了滑动结束时列表页对应的显示页面。

对于各第一列表行和各第二列表行中除了目标列表行之前的N行列表行的列表行,未加载并绘制其内容,可以在这些列表行中仅添加相同的预设图片或者直接显示空白的列表行。

本实施例中若目标列表行与当前列表行之间的行数大于或等于预设值M时,即快速滑动列表页,只加载并绘制目标列表行之前的N行列表行的内容,减少了不必要的数据的加载,提高了应用程序的响应速度,使得用户在快速滑动浏览列表页时,不会出现卡顿的现象,提升了用户的使用体验。

本实施例的应用程序列表页的处理方法包括:根据用户输入的列表页滑动指令,获取滑动开始用户选中的当前列表行与滑动结束时对应的目标列表行之间的行数,目标列表行为滑动结束时该列表页对应的显示页面的最后一行列表行;判断目标列表行与当前列表行之间的行数是否大于或等于预设值M,M为正整数;若目标列表行与当前列表行之间的行数大于或等于预设值M,则创建滑动开始时列表页对应的显示页面与滑动结束时列表页对应的显示页面之间的各第一列表行,以及滑动结束时列表页对应的显示页面的各第二列表行,加载并绘制目标列表行之前的N行列表行各自的内容,得到滑动结束时列表页对应的显示页面,其中,N<M,N为正整数;若目标列表行与当前列表行之间的行数小于预设值M,则创建滑动开始时列表页对应的显示页面与滑动结束时列表页对应的显示页面之间的各第一列表行,以及滑动结束时列表页对应的显示页面的各第二列表行,加载并绘制各第一列表行和各第二列表行各自的内容,得到滑动结束时列表页对应的显示页面。本实施例的应用程序列表页的处理方法使得用户在快速滑动浏览列表页时,不会出现列表页卡顿的现象,提升了用户的使用体验。

下面采用几个具体的实施例,对图1所示方法实施例的技术方案进行详细说明。

首先对上一实施例中的“若目标列表行与当前列表行之间的行数大于或等于预设值M,创建目标列表行之前的N行列表行,加载并绘制目标列表行之前的N行列表行各自的内容”的具体实现过程进行说明。对于各第一列表行和各第二列表行中除了目标列表行之前的N行列表行的列表行,由于未加载并绘制其内容,因此,这些列表行的创建过程不再说明,其创建过程与目标列表行之前的N行列表行的创建过程相同。

图4为本发明提供的应用程序列表页面的处理方法实施例二的流程图,如图4所示,本实施例的方法可以包括:

步骤S201、对于每一个第三列表行,获取第三列表行的内容的布局以及终端内存储的第三列表行的行高;第三列表行为目标列表行之前的N行列表行中的任一列表行;

步骤S202、根据第三列表行的行高和第三列表行的内容的布局新建列表行,得到第三列表行;

步骤S203、在第三列表行的视图层上添加图片层;

步骤S204、从服务器获取第三列表行的内容;

步骤S205、加载第三列表行的内容,并将第三列表行的内容异步绘制在图片层上。

具体地,本实施例是针对一个列表行的创建过程以及加载并绘制其内容的过程,且所针对的列表行为目标列表行之前的N行列表行中的任一列表行,此处称为第三列表行。目标列表行之前的N行列表行的创建过程以及加载并绘制其内容的过程均相同。

在应用程序首次被运行创建列表行时,终端会根据应用程序的程序代码计算列表行的行高,并获取列表行的内容的布局,根据行高和布局创建列表行,计算得到的行高会缓存在终端中,以在用户下次使用该应用程序或者往回滑动列表页时无需重新计算相应列表行的行高,避免了行高的计算对应用程序的响应速度的影响。

在创建第三列表行时,根据应用程序源程序代码获取列表行的内容的布局,并获取终端内存储的第三列表行的行高。根据该布局和该行高新建第三列表行。其中,若列表行的内容包括图片,图片的宽、高以及图片的各边的页边距等均为列表行的内容的布局。

其中,根据该布局和该行高新建第三列表行可以在“检测与列表页对应的已建好的列表行中是否存在与第三列表行的内容的布局和行高相同的备用列表行,得到的检测结果为否”的条件下触发,也可以不进行上述检测,直接在获取第三列表行的内容的布局以及终端内存储的第三列表行的行高后进行第三列表行的新建。

在新建好的第三列表行的视图层上添加图片层;从服务器获取第三列表行的内容后,加载第三列表行的内容,并将第三列表行的内容异步绘制在图片层上,即另起一个子线程将第三列表行的内容绘制在图片层上。

本领域技术人员可以理解的是由于第四列表行为各第一列表行或各第二列表行中的任一列表行,第三列表行为目标列表行之前的N行列表行中的任一列表行,目标列表行之前的N行列表行为各第一列表行和各第二列表行中的列标行,所以第三列表行属于各第四列表行组成的集合中的列表行。

本实施例中不直接在第三列表行的视图层上渲染第三列表行的内容,而是第三列表行的视图层上添加图片层,将第三列表行的内容异步绘制在图片层上,可以避免在用户来回滑动列表页时重复渲染第三列表行的内容,提高了应用程序的响应速度。

为了进一步的提高应用程序的响应速度,本实施例在上述实施例的基础上进行了改进。

图5为本发明提供的应用程序列表页面的处理方法实施例三的流程图,如图5所示,本实施例的方法可以包括:

步骤S301、对于每一个第三列表行,获取第一列表行的内容的布局以及终端内存储的第三列表行的行高;第三列表行为目标列表行之前的N行列表行中的任一列表行;

步骤S302、当检测到与列表页对应的已建好的列表行中存在与第三列表行的内容的布局和行高相同的备用列表行时,复用该备用列表行,得到第三列表行;

步骤S303、在第三列表行的视图层上添加图片层;

步骤S304、从服务器获取第三列表行的内容;

步骤S305、加载第三列表行的内容,并将第三列表行的内容异步绘制在图片层上。

本实施例的适用场景为:检测与列表页对应的已建好的列表行中是否存在与第三列表行的内容的布局和行高相同的备用列表行,得到的检测结果为是的应用场景。

步骤S301与上一实施例中的步骤S201相同,本实施例不做赘述。

对于步骤S302,当检测到与列表页对应的已创建好的列表行中存在与第三列表行的内容的布局和行高相同的备用列表行时,复用该备用列表行,得到第三列表行。

复用与列表页对应的已创建好的列表行,得到第三列表行,可以避免重新建立第三列表行,进一步提高了应用程序的响应速度。

步骤S303与上一实施例中的步骤S203相同,本实施例不做赘述;步骤S304与上一实施例中的步骤S204相同,本实施例不做赘述,步骤S305与上一实施例中的步骤S205相同,本实施例不做赘述。

本实施例通过复用与列表页对应的已创建好的列表行,得到第三列表行,避免了重新建立第三列表行,进一步提高了应用程序的响应速度。

图6为本发明提供的应用程序列表页的处理装置实施例一的结构示意图,如图6所示,本实施例的装置可以包括:获取模块11、判断模块12和处理模块13,其中,获取模块11,用于根据用户输入的列表页滑动指令,获取滑动开始用户选中的当前列表行与滑动结束时对应的目标列表行之间的行数;目标列表行为滑动结束时列表页对应的显示页面的最后一行列表行;判断模块12,用于判断目标列表行与当前列表行之间的行数是否大于或等于预设值M;处理模块13,用于若目标列表行与当前列表行之间的行数大于或等于预设值M时,创建滑动开始时列表页对应的显示页面与滑动结束时列表页对应的显示页面之间的各第一列表行,以及滑动结束时列表页对应的显示页面的各第二列表行,加载并绘制目标列表行之前的N行列表行各自的内容,得到滑动结束时列表页对应的显示页面。其中,N<M,N和M均为正整数。

处理模块13,还用于若目标列表行与当前列表行之间的行数小于预设值M时,创建滑动开始时列表页对应的显示页面与滑动结束时列表页对应的显示页面之间的各第一列表行,以及滑动结束时列表页对应的显示页面的各第二列表行,加载并绘制各第一列表行和各第二列表行各自的内容,得到滑动结束时列表页对应的显示页面。

处理模块13具体用于,对于每一个第四列表行,获取第四列表行的内容的布局和终端内存储的第四列表行的行高;第四列表行为各第一列表行或各第二列表行中的任一列表行;根据行高和布局新建列表行,得到第四列表行。

处理模块13还具体用于,对于每一个第三列表行,在第三列表行的视图层上添加图片层,第三列表行为目标列表行之前的N行列表行中的任一列表行;从服务器获取第三列表行的内容;加载第三列表行的内容,并将第三列表行的内容异步绘制在图片层上。

本实施例的装置,可以用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。

图7为本发明提供的应用程序列表页的处理装置实施例二的结构示意图,如图7所示,本实施例的装置在图6所示装置结构的基础上,进一步地,还可以包括:检测模块14,该检测模块14用于检测与列表页对应的已建好的列表行中是否存在与第四列表行的内容的布局和行高相同的备用列表行。

处理模块13还具体用于,对于每一个第四列表行,获取第四列表行的内容的布局和终端内存储的第四列表行的行高;第四列表行为各第一列表行或各第二列表行中的任一列表行;当检测到与列表页对应的已建好的列表行中存在与第四列表行的内容的布局和行高相同的备用列表行时,复用备用列表行,得到第四列表行。

本实施例的装置,可以用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。

图8为本发明提供的终端的结构示意图,如图8所示,本实施例的终端31包括图6或图7所示的应用程序列表页的处理装置32,其对应地,可以执行图1~图5中任一方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。

本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

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