The invention discloses a TV list data local refresh method, storage medium, electronic equipment and system, relates to the technical field of list control, the invention will be the new and old data refresh area corresponding to the list were cloned, calculated using EM Diff algorithm, the new difference of the old data; calculate the difference data. Use the adapter only updates the current list of data and the difference data index data corresponding to the list, in order to achieve the true sense of the partial refresh, ensure the list of non refresh area data is not affected; use the combination of SortedList adapter refresh, no empty list refresh process, does not appear blank list.
【技术实现步骤摘要】
电视列表数据局部刷新方法、存储介质、电子设备及系统
本专利技术涉及列表控件
,具体涉及一种电视列表数据局部刷新方法、存储介质、电子设备及系统。
技术介绍
在Android应用中,列表控件(ListView、GridView、RecyclerView)是使用最为频繁的控件之一,列表控件作为大批量数据展示窗口,不仅需要具备滑动加更多数据的特性,还需具备快速刷新数据的机制以满足用户快速浏览和查找数据的需求。列表快速数据刷新又分为全列表刷新(FLDR)和局部刷新(LLDR)两种:FLDR简单易用,其原理是先清空列表所有数据,然后填充所有数据,在数据量少的列表场景下,FLDR使用非常广泛,但其简单粗暴的特点也带来了刷新数据慢,且刷新过程中需要清空列表,导致列表存在“空白期”,用户体验差,而且刷新耗时;LLDR使用复杂,需要编写特定的新老数据差异比较算法,使用和学习过程较为陡峭,优点是由于无须清空列表数据,因此无痕刷新数据,中间没有FLDR的空白期,使用算法进行差异比较,只刷新存在差异的地方,因此刷新数据快;目前实现LLDR的方式是使用SortedList结合列表适配器 ...
【技术保护点】
一种电视列表数据局部刷新方法,其特征在于:周期性将列表刷新区域对应的数据封装成刷新数据集合,每次封装成刷新数据集合时必须同一类数据的索引值一一对应;对新、旧刷新数据集合进行克隆,并分别存储至两个不同的SortedList集合中,所述新刷新数据集合为从服务器请求的且尚未绑定至列表控件中的刷新数据集合,所述旧刷新数据集合为已绑定至列表控件中的刷新数据集合;设置工作线程,在该工作线程中读取两个所述SortedList集合中的新、旧数据,使用EM Diff算法计算出新、旧数据中存在差异的数据,再将新、旧数据存在差异的数据及其索引值输出作为差异数据;将差异数据加入消息队列中,主线程从 ...
【技术特征摘要】
1.一种电视列表数据局部刷新方法,其特征在于:周期性将列表刷新区域对应的数据封装成刷新数据集合,每次封装成刷新数据集合时必须同一类数据的索引值一一对应;对新、旧刷新数据集合进行克隆,并分别存储至两个不同的SortedList集合中,所述新刷新数据集合为从服务器请求的且尚未绑定至列表控件中的刷新数据集合,所述旧刷新数据集合为已绑定至列表控件中的刷新数据集合;设置工作线程,在该工作线程中读取两个所述SortedList集合中的新、旧数据,使用EMDiff算法计算出新、旧数据中存在差异的数据,再将新、旧数据存在差异的数据及其索引值输出作为差异数据;将差异数据加入消息队列中,主线程从所述消息队列中轮询读取差异数据并发送给列表适配器;使用列表适配器更新当前列表数据中与所述差异数据的索引值对应的列表数据。2.如权利要求1所述的一种电视列表数据局部刷新方法,其特征在于:使用EMDiff算法计算出新、旧数据中存在差异的数据的方法为:比较新旧数据的数据条目是否相同;新旧数据的数据条目时,比较新旧数据同一数据条目的属性值是否相同;若相同,不作处理;若不同,获取新旧数据同一数据条目的属性值差值作为新、旧数据差值。3.如权利要求1所述的一种电视列表数据局部刷新方法,其特征在于:使用Handler函数将差异数据加入消息队列中。4.如权利要求1所述的一种电视列表数据局部刷新方法,其特征在于:使用列表适配器仅更新当前列表数据中与所述差异数据的索引值对应的数据的方法为:读取差异数据的索引值;比较当前列表数据中是否存在索引值与差异数据的索引值相同;若是,更新当前列表数据中与所述差异数据的索引值对应的列表数据;若否,继续读取下一个差异数据的索引值,直至遍历完全部差异数据。5.一种存储介质,该存储介质上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现权利要求1至4任一项所述的方法。6.一种电子设备,包...
【专利技术属性】
技术研发人员:尹成,陈少杰,张文明,
申请(专利权)人:武汉斗鱼网络科技有限公司,
类型:发明
国别省市:湖北,42
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。