本发明涉及数据处理技术领域,尤其涉及一种列表滑动控制方法和装置。
背景技术:
随着移动终端硬件和软件技术的飞速发展,移动终端中各类应用界面的显示效果也越来越逼真,所能显示的数据也越来越多,所显示数据的结构也越来越复杂。由于列表显示数据的结构清晰,使用简单方便,因此各类应用都广泛应用列表进行数据显示。
但是,当列表中加载数据的数目较多时,在用户滑动列表的过程中,与列表对应的适配器不断在存储器中读取数据,将所读取的数据添加到列表中,并不断进行列表界面的更新操作,以更新列表中的数据。而读取数据的读取操作和列表界面的更新操作都需要占用大量的系统资源,容易出现列表滑动不流畅,滑动操作响应速度缓慢的问题。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
技术实现要素:
本发明的主要目的在于提供一种列表滑动控制方法和装置,旨在解决现有的移动终端列表的数据较多时,列表滑动不流畅,以及滑动操作响应速度慢的技术问题。
为实现上述目的,本发明提供一种列表滑动控制方法,所述列表滑动控制方法包括步骤:
当侦测到移动终端列表中待显示数据被触发时,确定所述列表中所述待显示数据的数目;
判断所述数目是否大于预设阈值;
当所述数目大于所述预设阈值,且所述列表处于滑动状态时,暂停对所述列表的更新操作。
优选地,所述判断所述数目是否大于预设阈值的步骤之后,还包括:
当所述数目小于或者等于所述预设阈值时,从存储器中读取数据,并将所读取的数据添加到所述列表中;
根据添加到所述列表中的数据更新所述列表界面。
优选地,所述当所述数目大于所述预设阈值,且所述列表处于滑动状态时,暂停对所述列表的更新操作的步骤包括:
当所述数目大于所述预设阈值时,判断所述列表是否处于滑动状态;
若所述列表处于滑动状态,则暂停从存储器中读取数据的读取操作,以及暂停对列表界面的更新操作。
优选地,所述当所述数目大于所述预设阈值时,判断所述列表是否处于滑动状态的步骤之后,还包括:
若所述列表处于非滑动状态,则执行所述从所述数据库中读取数据,并将所读取的数据添加到所述列表中的步骤。
优选地,所述判断所述列表是否处于滑动状态的步骤包括:
获取表示所述列表状态的标志位对应的标识信息;
若所述标识信息为第一标识信息,则确定所述列表处于滑动状态;
若所述标识信息为第二标识信息,则确定所述列表处于非滑动状态。
此外,为实现上述目的,本发明还提供一种列表滑动控制装置,所述列表滑动控制装置包括:
确定模块,用于当侦测到移动终端列表中待显示数据被触发时,确定所述列表中所述待显示数据的数目;
判断模块,用于判断所述数目是否大于预设阈值;
暂停模块,用于当所述数目大于所述预设阈值,且所述列表处于滑动状态时,暂停对所述列表的更新操作。
优选地,所述列表滑动控制装置还包括:
读取模块,用于当所述数目小于或者等于所述预设阈值时,从存储器中读取数据;
添加模块,用于将所读取的数据添加到所述列表中;
更新模块,用于根据添加到所述列表中的数据更新所述列表界面。
优选地,所述暂停模块包括:
判断单元,用于当所述数目大于所述预设阈值时,判断所述列表是否处于滑动状态;
暂停单元,用于若所述列表处于滑动状态,则暂停从存储器中读取数据的读取操作,以及暂停对列表界面的更新操作。
优选地,所述读取模块还用于若所述列表处于非滑动状态,则从所述数据库中读取数据。
优选地,所述判断单元还用于获取表示所述列表状态的标志位对应的标识信息;若所述标识信息为第一标识信息,则确定所述列表处于滑动状态;若所述标识信息为第二标识信息,则确定所述列表处于非滑动状态。
本发明通过当侦测到移动终端列表中待显示数据被触发时,确定所述列表中所述待显示数据的数目,当所述数目大于所述预设阈值,且所述列表处于滑动状态时,暂停对所述列表的更新操作。实现了当移动终端列表中的待显示数据较多,且该列表处于滑动状态时,暂停对所述列表的更新操作,减小对移动终端系统资源的占用,提高了列表滑动的速度,以及滑动操作的响应速度。
附图说明
图1为本发明列表滑动控制方法第一实施例的流程示意图;
图2为本发明列表滑动控制方法第二实施例的流程示意图;
图3为本发明列表滑动控制装置较佳实施例的功能模块示意图;
图4为本发明实施例中暂停模块的一种功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提供一种列表滑动控制方法。
参照图1,图1为本发明列表滑动控制方法第一实施例的流程示意图。
在本实施例中,所述列表滑动控制方法包括:
步骤S10,当侦测到移动终端列表中待显示数据被触发时,确定所述列表中所述待显示数据的数目;
当侦测到移动终端列表中的待显示数据被触发时,获取所述列表中的待显示数据,计算所述待显示数据的数目,以确定所述列表中所述待显示数据的数目。在本实施例中,触发所述列表中待显示数据的触发指令包括但不限于获取所述待显示数据的获取指令,以及显示所述待显示数据的显示指令。所述列表(ListView)是一个将子项(items)垂直排列组合的可以上下滚动的列表,这些子项来自于列表的列表适配器(ListAdapter)。所述列表适配器是列表和列表显示的数据的一个桥梁,主要是更方便的把列表和列表要显示的数据结合起来,即将列表和所述待显示数据结合起来,方便开发者开发。所述待显示数据包括但不限于DB(Database,数据库)数据、XML(Extensible Markup Language,可扩展标记语言)文件和图像数据。所述移动终端包括但不限于智能手机和掌上电脑。
进一步地,在获取所述列表的待显示数据过程中,可以直接调用与所述列表对应的接口读取所述待显示数据的数目。如当所述列表为ListView,所述列表中的待显示数据的数目为count时,则int count=listView.getCount()。
步骤S20,判断所述数目是否大于预设阈值;
步骤S30,当所述数目大于所述预设阈值,且所述列表处于滑动状态时,暂停对所述列表的更新操作。
当确定所述列表中所述待显示数据的数目时,判断所述待显示数据的数目是否大于预设阈值。当所述待显示数据的数目大于所述预设阈值,且所述列表处于滑动状态时,暂停对所述列表的更新操作,直至所述列表处于非滑动状态或者所述待显示数据的数目小于或者等于所述预设阈值。在本实施例中,所述预设阈值可根据具体需要而设置,如可设置为80、100和150等。
步骤S40,当所述数目小于或者等于所述预设阈值时,从存储器中读取数据,并将所读取的数据添加到所述列表中;
步骤S50,根据添加到所述列表中的数据更新所述列表界面。
当所述待显示数据的数目小于或者等于所述预设阈值时,从存储器中读取数据,并将所读取的数据添加到所述列表中。在将所读取的数据添加到所述列表中后,根据添加到所述列表中的数据更新所述列表界面。可以理解的是,更新所述列表界面的更新操作是在后台进行的。从所述存储器中所读取的数据包括但不限于DB数据、XML文件和图像数据。所述存储器包括内存储器、外存储器和云存储器等,当所述存储器为云存储器时,所述移动终端需要与所述云存储器建立连接。进一步地,若在所述移动终端的存储器中并未读取到数据,则不执行更新所述列表界面的更新操作。
进一步地,当所述列表从滑动状态转换为非滑动状态时,更新所述移动终端屏幕中所显示的数据。当所述移动终端屏幕中所显示的数据为所述列表中排列在最后面的数据时,输出提示信息,提示用户所述列表中的待显示数据已全部显示完毕。可以理解的是,所述提示信息的提示方式包括但不限于以语音、文字和提示灯的形式进行提示。
本实施例通过当侦测到移动终端列表中待显示数据被触发时,确定所述列表中所述待显示数据的数目,当所述数目大于所述预设阈值,且所述列表处于滑动状态时,暂停对所述列表的更新操作。实现了当移动终端列表中的待显示数据较多,且该列表处于滑动状态时,暂停对所述列表的更新操作,减小对移动终端系统资源的占用,提高了列表滑动的速度,以及滑动操作的响应速度。
进一步地,提出本发明列表滑动控制方法第二实施例。
所述列表滑动控制方法第二实施例与所述列表滑动控制方法第一实施例的区别在于,参照图2,所述步骤S30包括:
步骤S31,当所述数目大于所述预设阈值时,判断所述列表是否处于滑动状态;
当所述待显示数据的数目大于所述预设阈值时,判断所述列表是否处于滑动状态。需要说明的是,判断所述列表是否处于滑动状态可理解为判断是否侦测到用户在所述移动终端屏幕上的滑动操作。
进一步地,所述判断所述列表是否处于滑动状态的步骤包括:
步骤a,获取表示所述列表状态的标志位对应的标识信息;
步骤b,若所述标识信息为第一标识信息,则确定所述列表处于滑动状态;
步骤c,若所述标识信息为第二标识信息,则确定所述列表处于非滑动状态。
进一步地,判断所述列表是否处于滑动状态的具体过程为:获取表示所述列表状态的标志位对应的标识信息。若所述标识信息为第一标识信息,则确定所述列表处于滑动状态;若所述标识信息为第二标识信息,则确定所述列表处于非滑动状态。需要说明的是,所述标识信息与所述列表状态的对应关系是预先设置好的,如可设置当所述标志位对应的标识信息为1时,表示所述列表处于滑动状态,即当所述标志位对应的标识信息为1时,表示侦测到用户在所述移动终端屏幕中的滑动操作;当所述标志位对应的标识信息为0时,表示所述列表处于非滑动状态,即当所述标志位对应的标识信息为0时,表示未侦测到用户在所述移动终端屏幕中的滑动操作。
步骤S32,若所述列表处于滑动状态,则暂停从存储器中读取数据的读取操作,以及暂停对列表界面的更新操作。
若所述列表处于非滑动状态,则执行所述从存储器中读取数据,并将所读取的数据添加到所述列表中的步骤。
若所述列表处于滑动状态,则暂停从存储器中读取数据的读取操作,以及暂停对列表界面的更新操作,直至所述列表处于非滑动状态或者所述待显示数据的数目小于或者等于所述预设阈值。进一步地,若所述列表处于非滑动状态,则从所述存储器中读取数据,并将所读取的数据添加到所述列表中,根据添加到所述列表中的数据更新所述列表界面。
本实施例通过当移动终端列表中待显示数据的数目大于预设阈值时,根据列表是否处于滑动状态来决定是否从存储器中读取数据,以及更新所述列表界面。当列表处于非滑动状态时,才从存储器中读取数据,将所读取的数据添加到所述列表中,实现了在保证提高列表滑动速度的情况下,保证列表中数据的更新。
本发明进一步提供一种列表滑动控制装置。
参照图3,图3为本发明列表滑动控制装置较佳实施例的功能模块示意图。
需要强调的是,对本领域的技术人员来说,图3所示模块图仅仅是一个较佳实施例的示例图,本领域的技术人员围绕图3所示的列表滑动控制装置的模块,可轻易进行新的模块的补充;各模块的名称是自定义名称,仅用于辅助理解该列表滑动控制装置的各个程序功能块,不用于限定本发明的技术方案,本发明技术方案的核心是,各自定义名称的模块所要达成的功能。
本实施例提出一种列表滑动控制装置,所述列表滑动控制装置包括:
确定模块10,用于当侦测到移动终端列表中待显示数据被触发时,确定所述列表中所述待显示数据的数目;
当侦测到移动终端列表中的待显示数据被触发时,获取所述列表中的待显示数据,计算所述待显示数据的数目,确定模块10确定所述列表中所述待显示数据的数目。在本实施例中,触发所述列表中待显示数据的触发指令包括但不限于获取所述待显示数据的获取指令,以及显示所述待显示数据的显示指令。所述列表(ListView)是一个将子项(items)垂直排列组合的可以上下滚动的列表,这些子项来自于列表的列表适配器(ListAdapter)。所述列表适配器是列表和列表显示的数据的一个桥梁,主要是更方便的把列表和列表要显示的数据结合起来,即将列表和所述待显示数据结合起来,方便开发者开发。所述待显示数据包括但不限于DB(Database,数据库)数据、XML(Extensible Markup Language,可扩展标记语言)文件和图像数据。所述移动终端包括但不限于智能手机和掌上电脑。
进一步地,在获取所述列表的待显示数据过程中,可以直接调用与所述列表对应的接口读取所述待显示数据的数目。如当所述列表为ListView,所述列表中的待显示数据的数目为count时,则int count=listView.getCount()。
判断模块20,用于判断所述数目是否大于预设阈值;
暂停模块30,用于当所述数目大于所述预设阈值,且所述列表处于滑动状态时,暂停对所述列表的更新操作。
当确定模块10确定所述列表中所述待显示数据的数目时,判断模块20判断所述待显示数据的数目是否大于预设阈值。当所述待显示数据的数目大于所述预设阈值,且所述列表处于滑动状态时,暂停模块30暂停对所述列表的更新操作,直至所述列表处于非滑动状态或者所述待显示数据的数目小于或者等于所述预设阈值。在本实施例中,所述预设阈值可根据具体需要而设置,如可设置为80、100和150等。
读取模块40,用于当所述数目小于或者等于所述预设阈值时,从存储器中读取数据;
添加模块50,用于将所读取的数据添加到所述列表中;
更新模块60,用于根据添加到所述列表中的数据更新所述列表界面。
当所述待显示数据的数目小于或者等于所述预设阈值时,读取模块40从存储器中读取数据,添加模块50将所读取的数据添加到所述列表中。在将所读取的数据添加到所述列表中后,更新模块60根据添加到所述列表中的数据更新所述列表界面。可以理解的是,所述更新模块60更新所述列表界面的更新操作是在后台进行的。所述读取模块40从所述存储器中所读取的数据包括但不限于DB数据、XML文件和图像数据。所述存储器包括内存储器、外存储器和云存储器等,当所述存储器为云存储器时,所述移动终端需要与所述云存储器建立连接。进一步地,若在所述移动终端的存储器中并未读取到数据,则不执行更新所述列表界面的更新操作。
进一步地,当所述列表从滑动状态转换为非滑动状态时,所述更新模块60更新所述移动终端屏幕中所显示的数据。当所述移动终端屏幕中所显示的数据为所述列表中排列在最后面的数据时,输出提示信息,提示用户所述列表中的待显示数据已全部显示完毕。可以理解的是,所述提示信息的提示方式包括但不限于以语音、文字和提示灯的形式进行提示。
本实施例通过当侦测到移动终端列表中待显示数据被触发时,确定所述列表中所述待显示数据的数目,当所述数目大于所述预设阈值,且所述列表处于滑动状态时,暂停对所述列表的更新操作。实现了当移动终端列表中的待显示数据较多,且该列表处于滑动状态时,暂停对所述列表的更新操作,减小对移动终端系统资源的占用,提高了列表滑动的速度,以及滑动操作的响应速度。
进一步地,提出本发明列表滑动控制装置第二实施例。
所述列表滑动控制装置第二实施例与所述列表滑动控制装置第一实施例的区别在于,参照图4,所述暂停模块30包括:
判断单元31,用于当所述数目大于所述预设阈值时,判断所述列表是否处于滑动状态;
当所述待显示数据的数目大于所述预设阈值时,判断单元31判断所述列表是否处于滑动状态。需要说明的是,所述判断单元31判断所述列表是否处于滑动状态可理解为判断是否侦测到用户在所述移动终端屏幕上的滑动操作。
进一步地,所述判断单元31还用于获取表示所述列表状态的标志位对应的标识信息;若所述标识信息为第一标识信息,则确定所述列表处于滑动状态;若所述标识信息为第二标识信息,则确定所述列表处于非滑动状态。
进一步地,所述判断单元31判断所述列表是否处于滑动状态的具体过程为:获取表示所述列表状态的标志位对应的标识信息。若所述标识信息为第一标识信息,则确定所述列表处于滑动状态;若所述标识信息为第二标识信息,则确定所述列表处于非滑动状态。需要说明的是,所述标识信息与所述列表状态的对应关系是预先设置好的,如可设置当所述标志位对应的标识信息为1时,表示所述列表处于滑动状态,即当所述标志位对应的标识信息为1时,表示侦测到用户在所述移动终端屏幕中的滑动操作;当所述标志位对应的标识信息为0时,表示所述列表处于非滑动状态,即当所述标志位对应的标识信息为0时,表示未侦测到用户在所述移动终端屏幕中的滑动操作。
暂停单元32,用于若所述列表处于滑动状态,则暂停从存储器中读取数据,以及暂停对列表界面的更新操作。
所述读取模块40还用于若所述列表处于非滑动状态,则从所述数据库中读取数据。
若所述列表处于滑动状态,暂停单元32则暂停从存储器中读取数据的读取操作,以及暂停对列表界面的更新操作,直至所述列表处于非滑动状态或者所述待显示数据的数目小于或者等于所述预设阈值。进一步地,若所述列表处于非滑动状态,所述读取模块40则从所述存储器中读取数据,所述添加模块50将所读取的数据添加到所述列表中,所述更新模块60根据添加到所述列表中的数据更新所述列表界面。
本实施例通过当移动终端列表中待显示数据的数目大于预设阈值时,根据列表是否处于滑动状态来决定是否从存储器中读取数据,以及更新所述列表界面。当列表处于非滑动状态时,才从存储器中读取数据,将所读取的数据添加到所述列表中,实现了在保证提高列表滑动速度的情况下,保证列表中数据的更新。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。