[发明专利]网格视图控件的移动控制方法及系统有效
申请号: | 201610694167.1 | 申请日: | 2016-08-19 |
公开(公告)号: | CN106325714B | 公开(公告)日: | 2020-12-11 |
发明(设计)人: | 何小磊 | 申请(专利权)人: | TCL科技集团股份有限公司 |
主分类号: | G06F3/0485 | 分类号: | G06F3/0485;G06F3/0486 |
代理公司: | 深圳中一联合知识产权代理有限公司 44414 | 代理人: | 李艳丽 |
地址: | 516006 广东省惠州市*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 网格 视图 控件 移动 控制 方法 系统 | ||
本发明公开了一种网格视图控件的移动控制方法及系统。该网格视图控件的移动控制方法包括:初始化配置网格容器的宽高和数据集;网格容器的宽高限定网格容器的屏幕显示范围,数据集包括N*M个呈二维数组结构排布的数据块;根据子视图的宽高和网格容器的宽高,确定网格容器的屏幕显示范围中显示的子视图的数量和每一子视图的位置;接收用户输入的移动控制指令,根据移动控制指令获取网格容器中的目标子视图的位置;根据目标子视图的位置以及网格容器的屏幕显示范围的位置,控制网格容器相对于数据集移动或静止,以使目标子视图位于网格容器的屏幕显示范围中。该网格视图控件的移动控制方法及系统中,可使网格视图控件可实现任意方向移动的目的。
技术领域
本发明涉及计算机技术领域,尤其涉及一种网格视图控件的移动控制方法及系统。
背景技术
在Android系统开发过程中,通过采用网格视图(GridView)控件来显示大量子视图(View),网格视图(GridView)是一个以网格(Grid)显示子视图(View),即二维、可滚动的网格,在Android系统开发过程中应用广泛。在现有网格视图(GridView)控件中,只能实现特定对称方向的双向滚动,无法实现任意方向滚动的目的。
发明内容
本发明要解决的技术问题在于,针对现有网格视图控件只能在特定对称方向双向滚动的问题,提供一种网格视图控件的移动控制方法及系统。
本发明解决其技术问题所采用的技术方案是:一种网格视图控件的移动控制方法,包括:
初始化配置网格容器的宽高和数据集;所述网格容器的宽高限定所述网格容器的屏幕显示范围,所述数据集包括N*M个呈二维数组结构排布的数据块;
根据子视图的宽高和所述网格容器的宽高,确定所述网格容器的屏幕显示范围中显示的子视图的数量和每一子视图的位置;每一所述子视图对应所述网格容器的屏幕显示范围内的数据块;
接收用户输入的移动控制指令,根据所述移动控制指令获取所述网格容器中的目标子视图的位置;
根据所述目标子视图的位置以及所述网格容器的屏幕显示范围的位置,控制所述网格容器相对于所述数据集移动或静止,以使所述目标子视图位于所述网格容器的屏幕显示范围中。
优选地,所述根据子视图的宽高和所述网格容器的宽高,确定所述网格容器的屏幕显示范围中显示的子视图的数量和每一子视图的位置,包括:
根据所述子视图的宽高和所述网格容器的宽高分别确定所述网格容器的屏幕显示范围中横向显示和纵向显示的子视图的数量;
依据初始默认焦点所在的子视图为起点子视图;
从所述起点子视图开始依据所述横向显示和纵向显示的子视图的数量依次填充,以确定所述网格容器的屏幕显示范围中显示的每一所述子视图的位置。
优选地,所述接收用户输入的移动控制指令,根据所述移动控制指令获取所述网格容器中的目标子视图,包括:
接收用户输入的滚动控制指令,所述滚动控制指令包括目标子视图对应的数据块在所述数据集中的坐标信息;将所述坐标信息对应的数据块确定为所述网格容器中的目标子视图;
或者,接收用户通过点击数据块以输入点击控制指令;将所述点击控制指令所点击到的所述数据块确定所述网格容器中的目标子视图;
或者,接收用户通过滑动手势以输入的滑动控制指令;所述滑动控制指令终点所击中的数据块确定为所述网格容器中的目标子视图。
优选地,所述根据所述起点子视图、目标子视图以及所述网格容器的屏幕显示范围,控制所述网格容器相对于所述数据集移动,以使所述目标子视图位于所述网格容器的屏幕显示范围中,包括:
判断所述目标子视图是否完全位于所述网格容器的屏幕显示范围内;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于TCL科技集团股份有限公司,未经TCL科技集团股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610694167.1/2.html,转载请声明来源钻瓜专利网。