[发明专利]一种控件事件处理方法、装置及可读存储介质有效
| 申请号: | 201811152010.1 | 申请日: | 2018-09-29 |
| 公开(公告)号: | CN110968432B | 公开(公告)日: | 2022-11-11 |
| 发明(设计)人: | 艾牤宁 | 申请(专利权)人: | 武汉斗鱼网络科技有限公司 |
| 主分类号: | G06F9/54 | 分类号: | G06F9/54 |
| 代理公司: | 北京众达德权知识产权代理有限公司 11570 | 代理人: | 刘杰 |
| 地址: | 430000 湖北省武汉市东湖开*** | 国省代码: | 湖北;42 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 控件 事件 处理 方法 装置 可读 存储 介质 | ||
本发明提供了一种控件事件处理方法、装置及可读存储介质。在检测到目标控件被触发情况下,基于操作系统的响应链机制,将目标控件对应的目标控件事件与初始参数沿着响应链逐层向上传递;在目标控件事件与目标参数传递至预设层时,拦截目标控件事件,添加预设层对应的状态参数至初始参数后形成目标参数,将目标控件事件与目标参数继续沿着响应链向上层传递;在目标控件事件与目标参数传递至目标层时,拦截目标控件事件,基于目标参数对目标控件事件进行预设处理。
技术领域
本发明涉及电子技术领域,尤其涉及一种控件事件处理方法、装置及可读存储介质。
背景技术
随着电子设备技术的不断发展,各种电子设备被广泛应用于人们的日常生活中,电子设备中可以安装各类的应用程序,为人们的生活带来便利的同时,也为用户带来更多的娱乐。随着应用程序的功能越来越强大,页面对应的视图层级设计越来越复杂,层级越来越多,导致位于页面的控件的事件处理越来越复杂。现有的针对UI控件事件处理,通常采用delegate代理或者block 传递方式,这样的方式在实现时会产生很多冗余代码。
发明内容
本发明实施例提供了一种控件事件处理方法、装置及可读存储介质,用以减少控件处理时的冗余代码。
第一方面,本发明实施例提供了一种控件事件处理方法,包括:
在检测到目标控件被触发情况下,基于操作系统的响应链机制,将所述目标控件对应的目标控件事件与初始参数沿着响应链逐层向上传递;
在所述目标控件事件与所述目标参数传递至预设层时,拦截所述目标控件事件,添加所述预设层对应的状态参数至所述初始参数后形成目标参数,将所述目标控件事件与所述目标参数继续沿着所述响应链向上层传递;
在所述目标控件事件与所述目标参数传递至目标层时,拦截所述目标控件事件,基于所述目标参数对所述目标控件事件进行预设处理。
可选的,所述在检测到目标控件被触发情况下,基于操作系统的响应链机制,将所述目标控件对应的目标控件事件与初始参数沿着响应链逐层向上传递,包括:
在检测到第一控件被触发情况下,获得所述第一控件的视图层级信息;
如果所述视图层级信息表明所述第一控件的视图层级大于预设数值,将所述第一控件作为目标控件,基于操作系统的响应链机制,将所述目标控件对应的目标控件事件与初始参数沿着响应链逐层向上传递。
可选的,所述在所述目标控件事件与所述目标参数传递至目标层时,拦截所述目标控件事件,包括:
在所述目标控件事件向上传递至每一层时,判断当前层是否能响应所述目标控件事件;
如果是,确定所述当前层为目标层,拦截所述目标控件事件。
可选的,所述基于所述目标参数对所述目标控件事件进行预设处理,包括:
基于所述目标参数,确定所述目标控件事件的目标标识;
基于标识与处理方法间的索引关系,确定与所述目标标识对应的目标处理方法;
通过所述目标处理方法对所述目标控件事件进行预设处理。
第二方面,本发明实施例还提供一种控件事件处理装置,包括:
传递单元,用于在检测到目标控件被触发情况下,基于操作系统的响应链机制,将所述目标控件对应的目标控件事件与初始参数沿着响应链逐层向上传递;
添加单元,用于在所述目标控件事件与所述目标参数传递至预设层时,拦截所述目标控件事件,添加所述预设层对应的状态参数至所述初始参数后形成目标参数,将所述目标控件事件与所述目标参数继续沿着所述响应链向上层传递;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉斗鱼网络科技有限公司,未经武汉斗鱼网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811152010.1/2.html,转载请声明来源钻瓜专利网。





