列表在终端中的应用非常广泛,比如,通讯录、短信、相册和网页信息等,用户可以通过滑动列表或点击列表查看数据。
终端可以通过调用列表控件 ( ListView) 和为列表控件分配的适配器实现在界面中显示列表。 具体地,适配器实时接收待显示数据,根据需要显示的项数逐一绘制列表的数据项,并将接收到的待显示数据对应添加到列表的每一个数据项中,列表控件对适配器绘制后的列表进行显示。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题 :
如果列表处于滑动状态时适配器接收到待显示数据,则终端默认边滑动列表边显示待显示数据,当终端的性能低下或适配器中待显示数据的数据量很大时,边滑动列表边显示数据会造成列表控件运行卡顿的问题,降低了显示效率。
1.Android 系统中基于列表显示的数据显示方法及装置
本发明公开了一种 Android 系统中基于列表显示的数据显示方法及装置,属于计算机技术领域。 所述方法包括 :在接收到待显示数据后,检测列表是否处于滑动状态 ;若检测到所述列表处于滑动状态,则对所述待显示数据进行缓存 ;检测所述列表是否从滑动状态切换到静止状态 ;若检测到所述列表从滑动状态切换到静止状态,则对缓存的所述待显示数据进行显示。 本发明解决了边滑动列表边显示数据会造成列表控件运行卡顿的问题,达到了提高显示效率的技术效果。
为了解决边滑动列表边显示数据会造成列表控件运行卡顿的问题,本发明实施例提供了一种 Android 系统中基于列表显示的数据显示方法及装置。 所述技术方案如下 :
一方面,提供了一种 Android 系统中基于列表显示的数据显示方法,所述方法包括 :
在接收到待显示数据后,检测列表是否处于滑动状态 ;
若检测到所述列表处于滑动状态,则对所述待显示数据进行缓存 ;
检测所述列表是否从滑动状态切换到静止状态 ;
若检测到所述列表从滑动状态切换到静止状态,则对缓存的所述待显示数据进行显示。
另一方面,提供了一种 Android 系统中基于列表显示的数据显示装置,所述装置包括 :
第一检测模块,用于在接收到待显示数据后,检测列表是否处于滑动状态 ;
缓存模块,用于若所述第一检测模块检测到所述列表处于滑动状态,则对所述待显示数据进行缓存 ;
第二检测模块,用于所述第一检测模块检测到列表处于滑动状态之后,检测所述列表是否从滑动状态切换到静止状态 ;
显示模块,用于若所述第二检测模块检测到所述列表从滑动状态切换到静止状态,则对所述缓存模块缓存的所述待显示数据进行显示。
本发明实施例提供的技术方案带来的有益效果是 :
通过检测列表是否处于滑动状态 ;若检测到所述列表处于滑动状态,则对所述待显示数据进行缓存,检测列表是否从滑动状态切换到静止状态 ;若检测到列表从滑动状态切换到静止状态,则对缓存的待显示数据进行显示,解决了边滑动列表边显示数据会造成列表控件运行卡顿的问题,达到了提高显示效率的技术效果。
2.滑动列表的控制方法及系统
本发明公开了一种滑动列表的控制方法及系统,该方法包括以下步骤:当滑动列表减速滑动停止后,判断所述滑动列表的停止位置是否超过边界区域;若所述滑动列表的停止位置没有超过边界区域,则判断所述滑动列表最上方的条目所显示的高度是否小于预定值;若是,则控制所述滑动列表向上滑动至第一指定位置;若否,则控制所述滑动列表向下滑动至第二指定位置。采用上述滑动列表的控制方法及系统之后,条目的显示更加完整,在视觉上也更美观、更有条理,而且可以完整显示的条目增多,更有利于用户的选择。
众所周知,在一些应用程序中常常需要多个滑动列表。 传统的滑动列表的控制方法,当手势滑动后抬手 ( 即结束滑动操作),滑动列表会继续减速滑动,最后停止在某个位置。 此时,除非滑动列表停在超过边界区域的位置它才会回位到边界区域的位置,其他情况下都停在哪儿就是哪儿,导致抬手停止后条目 (或称“cell”) 的位置比较随意,造成最上或最下的条目显示不完整的情况出现。 例如图 1 所示,滑动列表最终停止滑动后,上面有个不完整的条目,下面也有个不完整的条目,能完整显示的只有中间的那一个条目。
对于条目比较多的应用程序来讲,采用传统的滑动列表的控制方法看上去影响并不大 ;但对于那种一个画面内条目较少的应用程序,或者当整个滑动列表的高度只有一个条目的高度,那么就连一个完整的条目都显示不出来,从而损失显示条目的完整性,也对美观有影响。
当滑动列表减速滑动停止后,判断所述滑动列表的停止位置是否超过边界区域 ;
若所述滑动列表的停止位置没有超过边界区域,则判断所述滑动列表最上方的条目所显示的高度是否小于预定值 ;
若是,则控制所述滑动列表向上滑动至第一指定位置 ;
若否,则控制所述滑动列表向下滑动至第二指定位置。
一种滑动列表的控制系统,包括 :
第一判断模块,用于当滑动列表减速滑动停止后,判断所述滑动列表的停止位置是否超过边界区域 ;
第二判断模块,用于若所述滑动列表的停止位置没有超过边界区域,则判断所述滑动列表最上方的条目所显示的高度是否小于预定值 ;
上滑控制模块,用于若所述滑动列表最上方的条目所显示的高度小于所述预定值,则控制所述滑动列表向上滑动至第一指定位置 ;
下滑控制模块,用于若所述滑动列表最上方的条目所显示的高度大于或等于所述预定值,则控制所述滑动列表向下滑动至第二指定位置。 由以上方案可以看出,本发明实施例的一种滑动列表的控制方法及系统,其在减速滑动停止时滑动列表不超过边界区域的前提下,当发现滑动列表最上方的条目所显示的高度小于预定值时,则控制滑动列表向上移动到指定位置 ;当滑动列表最上方的条目所显示的高度大于或等于预定值时,则控制滑动列表向下移动到另一指定位置,总之在滑动结束后,当前滑动列表最上方的那个条目要能够完全显示出来。 经过了本发明实施例的这种类似于网格对齐的处理后,条目的显示更加完整,在视觉上也更美观、更有条理,而且可以完整显示的条目增多,更有利于用户的选择。