列表显示的方法及装置
技术领域
本发明涉及终端领域,特别涉及一种列表显示的方法及装置。
背景技术
在移动互联网应用中,列表是展示数据时经常使用的交互控件。列表为目录和内容列表两个部分,目录中的每个目录索引会关联一个或多个内容列表中的内容索引,其中每个内容索引对应一个内容信息。
当用户点击目录中待查看的目录索引时,通过目录索引与内容索引之间的关联关系,查找到与被点击的目录索引相关联的内容索引,并将查找到的内容索引对应的内容信息绘制于列表的显示区域中,可以在列表快速定位目录对应的内容信息。
发明人发现现有技术至少存在以下问题:
通过点击目录索引来定位内容索引的方式,仅满足各个目录所对应的内容信息相对独立的展示方式。对于各个目录之间对应的内容信息以时间或者数字相关联的情况下则无法展示其关联效果,降低了该列表展示数据的效率,降低了人机交互性。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种列表显示的方法及装置。所述技术方案如下:
一方面,提供了一种列表显示的方法,所述方法包括:
当检测到目录中触发拖动事件,获取所述目录的进度条拖动后的位置位于目录坐标轴中的第一目录偏移值;
根据所述第一目录偏移值,计算内容列表的进度条相对于所述目录的进度条拖动后的待拖动位置位于内容列表坐标轴中的第一内容偏移值;
根据所述第一内容偏移值控制所述内容的进度条进行拖动,并获取所述内容列表的进度条拖动后的位置位于所述内容列表坐标轴中的第二内容偏移值;
根据所述第二内容偏移值,计算所述目录的进度条相对于所述内容列表的进度条拖动后的位置位于所述目录坐标轴中的第二目录偏移值;
根据所述第二目录偏移值对所述目录进行重绘和显示,以及根据所述第二内容偏移值对所述内容列表进行重绘和显示。
可选的,所述根据所述第一目录偏移值,计算内容列表的进度条相对于所述目录的进度条拖动后的待拖动位置位于内容列表坐标轴中的第一内容偏移值,包括:
根据所述第一目录偏移值,确定所述目录的进度条拖动后的位置位于目录索引中的第一索引区间;
选取所述第一索引区间映射于所述内容索引中的第二索引区间;
根据所述第一目录偏移值,所述第一索引区间以及所述第二索引区间,计算内容列表的进度条相对于所述目录的进度条拖动后的待拖动位置位于内容列表坐标轴中的第一内容偏移值。
可选的,所述根据所述第二内容偏移值,计算所述目录的进度条相对于所述内容列表的进度条拖动后的位置位于所述目录坐标轴中的第二目录偏移值,包括:
根据所述第二内容偏移值,确定所述内容列表的进度条拖动后的位置位于内容索引中的第三索引区间;
选取所述第三索引区间映射于所述目录索引中的第四索引区间;
根据所述第二内容偏移值,所述第三索引区间以及所述第四索引区间,计算所述目录的进度条相对于所述内容列表的进度条拖动后的位置位于所述目录坐标轴中的第二目录偏移值。
可选的,所述方法还包括:
当检测到内容列表中触发拖动事件,获取所述内容列表的进度条拖动后的位置位于内容列表坐标轴中的第三内容偏移值;
根据所述第三内容偏移值,计算目录的进度条相对于所述内容列表的进度条拖动后的位置位于所述目录坐标轴中的第三目录偏移值;
根据所述第三目录偏移值对所述目录进行重绘和显示,以及根据所述第三内容偏移值对所述内容列表进行重绘和显示。
可选的,所述根据所述第三内容偏移值,计算目录的进度条相对于所述内容列表的进度条拖动后的位置位于所述目录坐标轴中的第三目录偏移值,包括:
根据所述第三内容偏移值,确定所述内容列表的进度条拖动后的位置位于内容索引中的第五索引区间;
选取所述第五索引区间映射于所述目录索引中的第六索引区间;
根据所述第三内容偏移值,所述第五索引区间以及所述第六索引区间,计算目录的进度条相对于所述内容列表的进度条拖动后的位置位于所述目录坐标轴中的第三目录偏移值。
另一方面,提供了一种列表显示的装置,所述装置包括:
第一获取模块,用于当检测到目录中触发拖动事件,获取所述目录的进度条拖动后的位置位于目录坐标轴中的第一目录偏移值;
第一计算模块,用于根据所述第一目录偏移值,计算内容列表的进度条相对于所述目录的进度条拖动后的待拖动位置位于内容列表坐标轴中的第一内容偏移值;
第二获取模块,用于根据所述第一内容偏移值控制所述内容的进度条进行拖动,并获取所述内容列表的进度条拖动后的位置位于所述内容列表坐标轴中的第二内容偏移值;
第二计算模块,用于根据所述第二内容偏移值,计算所述目录的进度条相对于所述内容列表的进度条拖动后的位置位于所述目录坐标轴中的第二目录偏移值;
第一重绘模块,用于根据所述第二目录偏移值对所述目录进行重绘和显示,以及根据所述第二内容偏移值对所述内容列表进行重绘和显示。
可选的,所述第一计算模块,包括:
第一确定单元,用于根据所述第一目录偏移值,确定所述目录的进度条拖动后的位置位于目录索引中的第一索引区间;
第一选取单元,用于选取所述第一索引区间映射于所述内容索引中的第二索引区间;
第一计算单元,用于根据所述第一目录偏移值,所述第一索引区间以及所述第二索引区间,计算内容列表的进度条相对于所述目录的进度条拖动后的待拖动位置位于内容列表坐标轴中的第一内容偏移值。
可选的,所述第二计算模块,包括:
第二确定单元,用于根据所述第二内容偏移值,确定所述内容列表的进度条拖动后的位置位于内容索引中的第三索引区间;
第二选取单元,用于选取所述第三索引区间映射于所述目录索引中的第四索引区间;
第二计算单元,用于根据所述第二内容偏移值,所述第三索引区间以及所述第四索引区间,计算所述目录的进度条相对于所述内容列表的进度条拖动后的位置位于所述目录坐标轴中的第二目录偏移值。
可选的,所述装置还包括:
第三获取模块,用于当检测到内容列表中触发拖动事件,获取所述内容列表的进度条拖动后的位置位于内容列表坐标轴中的第三内容偏移值;
第三计算模块,用于根据所述第三内容偏移值,计算目录的进度条相对于所述内容列表的进度条拖动后的位置位于所述目录坐标轴中的第三目录偏移值;
第二重绘模块,用于根据所述第三目录偏移值对所述目录进行重绘和显示,以及根据所述第三内容偏移值对所述内容列表进行重绘和显示。
可选的,所述第三计算模块,包括:
第三确定单元,用于根据所述第三内容偏移值,确定所述内容列表的进度条拖动后的位置位于内容索引中的第五索引区间;
第三选取单元,用于选取所述第五索引区间映射于所述目录索引中的第六索引区间;
第三计算单元,用于根据所述第三内容偏移值,所述第五索引区间以及所述第六索引区间,计算目录的进度条相对于所述内容列表的进度条拖动后的位置位于所述目录坐标轴中的第三目录偏移值。
本发明实施例提供的技术方案带来的有益效果是:
通过在目录中发生拖动事件以后,可以根据目录的进度条拖动后的位置关联对内容列表的进度条进行拖动并确定内容列表的进度条的最终位置;最终根据内容列表的进度条的最终位置反推目录的进度条的最终位置,并将目录和内容列表进行重绘。实现了列表中的目录与内容列表关联拖动,并在目录拖动后在内容列表中进行准确定位,提高了列表显示的精确性,并提高了人机交互性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的列表显示的方法流程图;
图2是本发明实施例二提供的列表显示的方法流程图;
图3是本发明实施例二提供的列表显示的方法中一实施场景示意图;
图4是本发明实施例三提供的列表显示的方法流程图;
图5是本发明实施例四提供的列表显示的装置结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例一
本发明实施例提供了一种列表显示的方法,参见图1,方法流程包括:
101:当检测到目录中触发拖动事件,获取目录的进度条拖动后的位置位于目录坐标轴中的第一目录偏移值;
102:根据第一目录偏移值,计算内容列表的进度条相对于目录的进度条拖动后的待拖动位置位于内容列表坐标轴中的第一内容偏移值;
103:根据第一内容偏移值控制内容列表的进度条进行拖动,并获取内容列表的进度条拖动后的位置位于内容列表坐标轴中的第二内容偏移值;
104:根据第二内容偏移值,计算目录的进度条相对于内容列表的进度条拖动后的位置位于目录坐标轴中的第二目录偏移值;
105:根据第二目录偏移值对目录进行重绘和显示,以及根据第二内容偏移值对内容列表进行重绘和显示。
本发明实施例通过在目录中发生拖动事件以后,可以根据目录的进度条拖动后的位置关联对内容列表的进度条进行拖动并确定内容列表的进度条的最终位置;最终根据内容列表的进度条的最终位置反推目录的进度条的最终位置,并将目录和内容列表进行重绘。实现了列表中的目录与内容列表关联拖动,并在目录拖动后在内容列表中进行准确定位,提高了列表显示的精确性,并提高了人机交互性。
实施例二
本发明实施例提供了一种列表显示的方法,参见图2。
需要说明的是,本发明实施例在目录中触发拖动事件后,可以为用户完成拖动事件后进行;也可以为在拖动事件过程中按照预设时间周期性的进行完整的流程,直到拖动事件结束,在整个拖动事件过程中会根据拖动事件的执行时间周期性的完成多次本发明实施例中完整过程的循环。
其中,该方法流程包括:
201:当检测到目录中触发拖动事件,获取目录的进度条拖动后的位置位于目录坐标轴中的第一目录偏移值。
在列表中包括有目录和内容列表两个部分,目录中设置有目录的进度条,以确定目录的位置以及通过调整目录的进度条对内容列表中的内容信息进行快速定位;内容列表中设置有内容列表的进度条以确定内容列表的位置以及通过调整内容列表的进度条对目录进行快速定位。
在本发明实施例中用户通过在终端屏幕中对目录进行滑动操作触发拖动事件。
目录的进度条拖动后位于目录坐标轴中的第一目录偏移值,即为目录拖动后当前位置距离目录坐标轴中原点的偏移值,该偏移值的单位可以为像素值。
202:根据第一目录偏移值,计算内容列表的进度条相对于目录的进度条拖动后的待拖动位置位于内容列表坐标轴中的第一内容偏移值。
其中,步骤202计算第一内容偏移值的实现过程可以通过以下步骤具体实现:
2021:根据第一目录偏移值,确定目录的进度条拖动后的位置位于目录索引中的第一索引区间。
目录中的每个目录索引的位置已经预先确定,即每个目录索引距离目录坐标轴原点的偏移值已经预先确定。因此,可以根据第一目录偏移值确定目录的进度条位于目录索引的区间。其中,目录索引可以作为目录中的刻度尺,显示在目录中以提示用户目录的进度条的位置。
例如:目录索引3距离目录坐标轴原点的偏移值为15,目录索引4距离目录坐标轴原点的偏移值为20,而第一目录偏移值为16,则可以确定目录的进度条位于目录索引3和目录索引4之间,即第一索引区间为目录索引3至目录索引4。
2022:选取第一索引区间映射于内容索引中的第二索引区间。
预先建立目录索引与内容索引之间的对应关系,因此通过第一索引区间即可以映射至内容索引中的第二索引区间。其中,内容列表中的每个内容索引的位置已经预先确定,即每个内容索引距离内容列表坐标轴原点的偏移值已经预先确定。
例如:第一索引区间为目录索引3至目录索引4,目录索引3对应内容索引3,目录索引4对应内容索引4,即第二索引区间为内容索引3至内容索引4。其中,内容索引3距离内容列表坐标轴原点的偏移值为30,内容索引4距离内容列表坐标轴原点的偏移值为40。
2023:根据第一目录偏移值,第一索引区间以及第二索引区间,计算内容列表的进度条相对于目录的进度条拖动后的待拖动位置位于内容列表坐标轴中的第一内容偏移值。
具体的计算公式如下:
其中,x为拖动后目录的进度条的偏移值,在本次计算中该参数即第一目录偏移值;y为拖动后内容列表的进度条的偏移值,在本次计算中该参数即为待计算的第一内容偏移值;f(n)和f(n+1)为拖动后的目录的进度条的偏移值位于的目录索引区间中各目录索引的偏移值,在本次计算中这两个参数分别为第一索引区间中两个目录索引的偏移值;g(n)和g(n+1)为拖动后内容列表的进度条的偏移值位于的内容列表索引区间中各内容索引的偏移值,在本次计算中这两个参数分别为第二索引区间中两个内容索引的偏移值。
203:根据第一内容偏移值控制内容的进度条进行拖动,并获取内容列表的进度条拖动后的位置位于内容列表坐标轴中的第二内容偏移值。
可选的,控制内容列表的进度条进行拖动的过程,还可以在内容偏移值与拖动速度的对应关系中根据第一内容偏移值获取到适合的拖动速度。
例如:内容偏移值越大,则对应的拖动速度越大;反之,内容偏移值越小,则对应的拖动速度越小。
进一步的,由于拖动过程中模拟真实物理环境中的运动效果,在内容列表的进度条拖动至第二内容偏移值的位置时,有可能会因为惯性的作用继续拖动一段距离,因此内容列表的进度条最终拖动停止的位置并不一定距离内容列表坐标轴的原点的偏移值为第一内容偏移值。因此,在拖动停止后获取内容列表的进度条当前的第二内容偏移值。
相应的,执行步骤204来根据第二内容偏移值来调整最终目录偏移值,确定目录的进度条最终所在的位置,并根据最终所在的位置来对目录进行重绘,导致目录的进度条在根据第一目录偏移值进行重绘后,再根据反馈的第二内容偏移值计算第二内容偏移值后进行重绘,产生抖动现象。
204:根据第二内容偏移值,计算目录的进度条相对于内容列表的进度条拖动后的位置位于目录坐标轴中的第二目录偏移值。
本步骤为根据内容列表的进度条拖动后的第二内容偏移值反推目录的进度条拖动后的最终位置。其中,步骤204计算第二目录偏移值的实现过程可以通过以下步骤具体实现:
2041:根据第二内容偏移值,确定内容列表的进度条拖动后的位置位于内容索引中的第三索引区间。
其中,内容列表中的每个内容索引的位置已经预先确定,即每个内容索引距离内容列表坐标轴原点的偏移值已经预先确定。因此,可以确定根据第二内容偏移值确定内容列表的进度条位于内容索引的区间。
2042:选取第三索引区间映射于目录索引中的第四索引区间。
预先建立目录索引与内容索引之间的对应关系,因此通过第三索引区间即可以映射至目录索引中的第四索引区间。
2043:根据第二内容偏移值,第三索引区间以及第四索引区间,计算目录的进度条相对于内容列表的进度条拖动后的位置位于目录坐标轴中的第二目录偏移值。
其中,该计算所使用的公式为步骤2023中的公式,具体的带入值则为:x为待计算的第二目录偏移值;y为第二内容偏移值;f(n)和f(n+1)为第四索引区间中各目录索引的偏移值;g(n)和g(n+1)为第三索引区间中各内容索引的偏移值。
最终根据该公式计算得到y,即第二目录偏移值。
205:根据第二目录偏移值对目录进行重绘和显示,以及根据第二内容偏移值对内容列表进行重绘和显示。
此时,对目录和内容列表进行重绘,生成拖动目录的进度条之后最终的列表。
如图3所示,该图示出了本发明实施例中一个实施场景的示意图,图中为用户控制目录的进度条进行横向拖动,在拖动前内容列表301中显示有12张照片即图1-图12,此时目录的进度条302位于6月;在拖动后内容列表303中显示有10张照片即图4-图12以及图13,此时目录的进度条304位于6月之前与1月之间的位置。
其中,在该实例中,用户拖动目录进度条后得到了第一目录偏移值,终端根据该第一目录偏移值确定计算内容列表的进度条相对于目录的进度条拖动后的待拖动位置位于内容列表坐标轴中的第一内容偏移值,再根据第一内容偏移值获取内容列表的进度条拖动后的位置位于内容列表坐标轴中的第二内容偏移值;根据第二内容偏移值计算目录的进度条最终的第二目录偏移值;最终根据第二目录偏移值对目录进行重绘得到目录的进度条304,以及根据第二内容偏移值对内容列表进行重绘和显示得到内容列表303。
本发明实施例通过在目录中发生拖动事件以后,可以根据目录的进度条拖动后的位置关联对内容列表的进度条进行拖动并确定内容列表的进度条的最终位置;最终根据内容列表的进度条的最终位置反推目录的进度条的最终位置,并将目录和内容列表进行重绘。实现了列表中的目录与内容列表关联拖动,并在目录拖动后在内容列表中进行准确定位,提高了列表显示的精确性,并提高了人机交互性。
实施例三
本发明实施例提供了一种列表显示的方法,参见图4,方法流程包括:
401:当检测到内容列表中触发拖动事件,获取内容列表的进度条拖动后的位置位于内容列表坐标轴中的第三内容偏移值。
本发明实施例中为用户通过在终端屏幕中对内容列表进行滑动操作触发拖动事件。
402:根据第三内容偏移值,计算目录的进度条相对于内容列表的进度条拖动后的位置位于目录坐标轴中的第三目录偏移值。
其中,步骤402计算第三目录偏移值的实现过程可以通过以下步骤具体实现:
4021:根据第三内容偏移值,确定内容列表的进度条拖动后的位置位于内容索引中的第五索引区间。
其中,内容列表中的每个内容索引的位置已经预先确定,即每个内容索引距离内容列表坐标轴原点的偏移值已经预先确定。因此,可以根据第二内容偏移值确定内容列表的进度条位于内容索引的区间。
4022:选取第五索引区间映射于目录索引中的第六索引区间。
预先建立目录索引与内容索引之间的对应关系,因此通过第五索引区间即可以映射至目录索引中的第六索引区间。
4023:根据第三内容偏移值,第五索引区间以及第六索引区间,计算目录的进度条相对于内容列表的进度条拖动后的位置位于目录坐标轴中的第三目录偏移值。
其中,该计算所使用的公式为实施例二中步骤2023中的公式,具体的带入值则为:x为待计算的第三目录偏移值;y为第三内容偏移值;f(n)和f(n+1)为第六索引区间中各目录索引的偏移值;g(n)和g(n+1)为第五索引区间中各内容索引的偏移值。
最终根据该公式计算得到y,即第三目录偏移值。
403:根据第三目录偏移值对目录进行重绘和显示,以及根据第三内容偏移值对内容列表进行重绘和显示。
此时,对目录和内容列表进行重绘,生成拖动内容列表进度条之后最终的列表。
本发明实施例通过在内容列表中发生拖动事件以后,可以根据内容列表的进度条拖动后的位置关联对目录的进度条进行拖动并确定内容列表的进度条的最终位置,并将目录和内容列表进行重绘。实现了列表中的目录与内容列表关联拖动,并在内容列表拖动后在目录中进行准确定位,提高了列表显示的精确性,并提高了人机交互性。
实施例四
本发明实施例提供了一种列表显示的装置,参见图5,该装置包括:
第一获取模块501,用于当检测到目
录中触发拖动事件,获取目录的进度条拖动后的位置位于目录坐标轴中的第一目录偏移值;
第一计算模块502,用于根据第一目录偏移值,计算内容列表的进度条相对于目录的进度条拖动后的待拖动位置位于内容列表坐标轴中的第一内容偏移值;
第二获取模块503,用于根据第一内容偏移值控制内容的进度条进行拖动,并获取内容列表的进度条拖动后的位置位于内容列表坐标轴中的第二内容偏移值;
第二计算模块504,用于根据第二内容偏移值,计算目录的进度条相对于内容列表的进度条拖动后的位置位于目录坐标轴中的第二目录偏移值;
第一重绘模块505,用于根据第二目录偏移值对目录进行重绘和显示,以及根据第二内容偏移值对内容列表进行重绘和显示。
其中,第一计算模块502,包括:
第一确定单元,用于根据第一目录偏移值,确定目录的进度条拖动后的位置位于目录索引中的第一索引区间;
第一选取单元,用于选取第一索引区间映射于内容索引中的第二索引区间;
第一计算单元,用于根据第一目录偏移值,第一索引区间以及第二索引区间,计算内容列表的进度条相对于目录的进度条拖动后的待拖动位置位于内容列表坐标轴中的第一内容偏移值。
其中,第二计算模块504,包括:
第二确定单元,用于根据第二内容偏移值,确定内容列表的进度条拖动后的位置位于内容索引中的第三索引区间;
第二选取单元,用于选取第三索引区间映射于目录索引中的第四索引区间;
第二计算单元,用于根据第二内容偏移值,第三索引区间以及第四索引区间,计算目录的进度条相对于内容列表的进度条拖动后的位置位于目录坐标轴中的第二目录偏移值。
其中,装置还包括:
第三获取模块506,用于当检测到内容列表中触发拖动事件,获取内容列表的进度条拖动后的位置位于内容列表坐标轴中的第三内容偏移值;
第三计算模块507,用于根据第三内容偏移值,计算目录的进度条相对于内容列表的进度条拖动后的位置位于目录坐标轴中的第三目录偏移值;
第二重绘模块508,用于根据第三目录偏移值对目录进行重绘和显示,以及根据第三内容偏移值对内容列表进行重绘和显示。
其中,第三计算模块507,包括:
第三确定单元,用于根据第三内容偏移值,确定内容列表的进度条拖动后的位置位于内容索引中的第五索引区间;
第三选取单元,用于选取第五索引区间映射于目录索引中的第六索引区间;
第三计算单元,用于根据第三内容偏移值,第五索引区间以及第六索引区间,计算目录的进度条相对于内容列表的进度条拖动后的位置位于目录坐标轴中的第三目录偏移值。
本发明实施例本发明实施例通过在目录中发生拖动事件以后,可以根据目录的进度条拖动后的位置关联对内容列表的进度条进行拖动并确定内容列表的进度条的最终位置;最终根据内容列表的进度条的最终位置反推目录的进度条的最终位置,并将目录和内容列表进行重绘。
通过在内容列表中发生拖动事件以后,可以根据内容列表的进度条拖动后的位置关联对目录的进度条进行拖动并确定内容列表的进度条的最终位置,并将目录和内容列表进行重绘。实现了列表中的目录与内容列表关联拖动,并在内容列表拖动后在目录中进行准确定位,提高了列表显示的精确性,并提高了人机交互性。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。