Android之Fragment学习(四)

来源:互联网 发布:4g逛淘宝用多少流量 编辑:程序博客网 时间:2024/04/30 16:21

这篇博客和上篇是一起写的,由于感觉篇幅过长,所以分成两篇而已。废话不多说直接上!
Fragment 与 Activity 通信:
(1)Fragment 可以调用getActivity()方法获取它所在的 Activity。
(2)Activity 可以调用 FragmentManager 的 findFragmentById( ) 或findFragmentByTag( ) 方法获取 Fragment。
传递数据:Fragment 与 Activity 通信往往会带一些数据去做传递数据的作用。
Activity 向 Fragment 传递数据需要在 Activity 中创建 Bundle 数据包,并调用 Fragment 的 setArguments(Bundle budle)方法把数据传进去。
Fragment 向 Activity 传递数据需要在 Fragment 中定义一个内部回调接口,再让包含该 Fragment 的 Activity 实现该回调接口。这样 Fragment 可以调用该回调方法将数据传递给Activity。
右键 java 目录,新建一个 empty activity,名字取做 TongXinActivity,包名取做 com.example.tongxin。然后 finish。先修改布局文件 activity_tong_xin.xml。
这里写图片描述

再右键 res 下 layout,新建 fragment(blank)。名字叫做 TongXinFragment,其他不变,然后确定。修改布局文件 fragment_tong_xin.xml。
这里写图片描述

然后我们去修改 TongXinActivity 传递数据给 Fragment。
这里写图片描述
(只截了关键地方,其他地方没变)
在 TongXinFragment 接收数据。
这里写图片描述
最后修改 MainActivity,使它跳转到 TongXinActivity。
这里写图片描述
然后运行项目,通过输入数据,点击发送,可以看见 Fragment 能够接收到数据。

最后,我们讲讲 Fragment 向 Activity 传递数据。
修改TongXinFragment,添加一个要返回的字符串,添加一个内部接口,
这里写图片描述
让 TongXinActivity 实现该接口并重写方法获得返回的字符串。
这里写图片描述

运行项目后就可以看见打印一条提醒信息,这样我们就获得了 Fragment 返回的数据。

最后,博客就产不多结束了,这里要提醒大家一个前面忘记的内容,Android Studio 新建 Activity 是会自动注册的,但 eclipse 是需要手动注册的。

**本人技术拙劣,请大家多多包涵,有错误的地方请指出来的,大家一起研究。
本项目已经上传到 GitHub:https://github.com/luoson/TestFragment

0 0
原创粉丝点击