[发明专利]一种多Fragment之间的通信方法及系统有效
申请号: | 201710556420.1 | 申请日: | 2017-07-10 |
公开(公告)号: | CN107368311B | 公开(公告)日: | 2021-07-23 |
发明(设计)人: | 张磊;张文明;陈少杰 | 申请(专利权)人: | 武汉斗鱼网络科技有限公司 |
主分类号: | G06F9/451 | 分类号: | G06F9/451;G06F9/54 |
代理公司: | 北京众达德权知识产权代理有限公司 11570 | 代理人: | 刘杰 |
地址: | 430000 湖北省武汉市东湖开*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 fragment 之间 通信 方法 系统 | ||
本发明提供一种多Fragment之间的通信方法及系统,所述的方法包括:S1,为界面中的所有Fragment碎片配置消息控制器,并且在所述消息控制器中注册所有的Fragment,其中,所有注册的Fragment均处于平等关系;S2,基于为每一个Fragment定义的命令接口及其接口函数,由消息控制器将源Fragment的消息转发至目的Fragment。本发明为界面中所有的Fragment配置消息管理器,由消息控制器进行转发的方式实现不同Fragment之间的通信,避免多个Fragment之间直接通信带来的混乱,以及当多个Fragment之间存在嵌套关系时,避免现有的需要一层一层逐级下发消息带来的通信复杂的问题。
技术领域
本发明涉及通信技术领域,更具体地,涉及一种多Fragment之间的通信方法及系统。
背景技术
在Android开发过程中,通常会涉及到界面相关的编程,Fragment为整个界面中的碎片元素,可以理解为Fragment为界面中的一部分。
一个界面可以装载一个或多个Fragment,比如,整个界面包含三个tab元素,每一个tab元素为界面中的一个页面,tab页面之间可以切换,一个tab页面的切换可以由一个Fragment来控制。在开发过程中,一个Fragment可以控制一个页面的业务逻辑,多个Fragment可以分离和独立各个页面的业务逻辑,方便后期维护。
多个Fragment之间需要进行通信,传统的方式是Fragment之间直接通信,这样如果Fragment的数量很多时,Fragment之间的通信会比较混乱,同时,若多个Fragment之间存在嵌套引用关系,则顶层的Fragment向最底层的Fragment发送消息时,需要通过各级的Fragment逐层进行转发,通信速度慢。
发明内容
本发明提供一种克服上述问题或者至少部分地解决上述问题的多Fragment之间的通信方法及系统。
根据本发明的第一个方面,提供一种多Fragment之间的通信方法,包括:
S1,为界面中的所有Fragment碎片配置消息控制器,并且在所述消息控制器中注册所有的Fragment,其中,所有注册的Fragment处于平等关系;
S2,基于为每一个Fragment定义的命令接口及其接口函数,由消息控制器将源Fragment的消息转发至目的Fragment。
本发明的有益效果为:为界面中所有的Fragment配置消息管理器,由消息控制器进行转发的方式实现一个Fragment向另一个Fragment发送消息,避免多个Fragment之间直接通信的混乱;以及当多个Fragment之间存在嵌套关系时,由于本实施例在消息控制器中注册的所有的Fragment是处于对等的关系,在源Fragment向具有嵌套关系的目的Fragment发送消息时,直接由消息控制器转发给目的Fragment,而不需通过一级一级的Fragment进行传递,避免现有的需要一层一层逐级下发消息带来的通信复杂的问题。
在上述技术方案的基础上,本发明还可以作如下改进。
进一步的,所述步骤S2进一步包括:
为每一个Fragment定义命令接口,并为该命令接口定义接口函数,所述接口函数中至少包括消息命令字和消息体参数。
进一步的,所述步骤S2还包括:
对于注册到消息控制器的所有Fragment,在消息控制器内维护一个用来存放所有注册的Fragment对象的对象集合。
进一步的,所述步骤S2进一步包括:
当消息控制器接收到源Fragment发送的消息时,以广播的方式或者点对点的方式将所述消息发送给目的Fragment。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉斗鱼网络科技有限公司,未经武汉斗鱼网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710556420.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种便于脱模的合金粉末成型模具
- 下一篇:一种多工件联动的高效车床