(原创)Fragment详解(下)
来源:互联网 发布:muji值得买的东西 知乎 编辑:程序博客网 时间:2024/05/20 00:35
Fragment组件通信
Fragment的通信,我一般把它分成以下三种情况
1:Activity传值给Fragment
2:Fragment传值给Activity
3:Fragment互相通信
这三种情况其实都可以用广播或者Eventbus去实现
但还有更普遍的做法,这里做一个详细的介绍。
先看第一种
Activity传值给Fragment
Fragment对象一般会有这么一个方法
Fragment.setArguments();
这个方法的参数是一个Bundle
这下大家就应该清楚了,
把要传递的数值放入这个Bundle就可以了
那么怎么接收这个Bundle呢?
一般我们会在Fragment的onActivityCreate中去接收
具体做法就是:
Activity在加载Fragment时,
给Fragment对象调用setarguments()
把要传递的内容放入bundle,
然后把bundle放入这个方法中去
而fragment自身调用getArguments()得到这个传过来的bundle
这样就完成了传值了。
2 Fragment传值给Activity
这个就比较简单了
Fragment对象可以调用getActivity()方法得到自己所占据的Activity对象
然后Activity开放一个public方法让Fragment调用这个方法即可得到想要的数值了
3Fragment互相传值
同样是调用getActivity()得到Activity对象
然后要得到这个Actiity的FragmentManager对象
通过这个FragmentManager对象调用getFragmentById()
则可以得到另外一个fragment对象
然后调用这个得到的fragment对象的public方法即可。
- (原创)Fragment详解(下)
- (原创)Fragment详解(上)
- (原创)Fragment详解(中)
- fragment详解(下)
- fragment 详解(下)
- Android Fragment 带实例详解(下)
- Fragment (官方详解)
- 详解Fragment(一)
- Fragment详解(1)
- Fragment详解(2)
- fragment详解(上)
- Fragment详解(上)
- 【Fragment】 Android Fragment生命周期详解(图文)
- Android Fragment详解(四):管理Fragment
- Fragment详解(一):Fragment简介
- Fragment详解(三):创建Fragment
- Fragment详解(四)Fragment生命周期
- Fragment详解(六):Fragment与Menu
- hdu2717 Catch That Cow
- 生产订单形成的差异如何传递到COPA
- Android 如何debug aar
- 如何通过反射获取和设置对象私有字段的值?
- Java 变量类型
- (原创)Fragment详解(下)
- 8、Selenium + Python 实现 UI 自动化测试-操作浏览器标签
- #Java 核心技术卷一阅读笔记# 第六章 接口、lambda表达式与内部类
- 同花顺2018届校园招聘题目
- Scala函数式程序设计 week3 Functions and State
- codeforces 580A Kefa and First Steps
- 一步步实现三方操作功能模块封装(一),三方登录
- 详解linux下的串口通讯开发
- transform的兼容性写法