虽然在Activity中能获取Fragment的控件,进而可以对控件进行操作,但是如果Activity所关联的Fragment的所有操作都在Activity中操作,不仅会导致Activity内容过多难于理解,而且复杂的逻辑结构更是会导致Bug的难以修复。另一方面,Fragment将自己的控件交由Activity处理,破坏了封装性也不符合面向对象的理念。
由Fragment处理自己控件的响应事件,然后将处理的结果返回到对应的Activity,是一种最为合适的策略。
实现Fragment与Activity的数据传递
1、将自己需要的函数定义成接口
2、在Activity中实现接口中的函数
继承接口content,实现接口中的方法
实现的时候加@Override会报错,所以我就没加注解
3、在需要的Fragment中调用对应的函数即可
Fragment与Fragment的数据传递
Fragment与Fragment的数据传递同样具有重要的作用
上面实现了Fragment的数据传递到Activity,现在只需要将Activity的数据传递到Fragment就可以
实现Fragment与Fragment的数据传递了
Fragment----->Activity------>Fragment
在Fragment中调用Activity中实现接口中的方法,获取数据
原理上都是Fragment与Activity的交互,只是后者在Activity中存储了另一个Fragment的数据然后传递给
下一个Fragment罢了。