蠢里蠢气LJS的专栏

今天干不了的事情明天干,明天干不了的事情后天干。后天干不了的事情今天干。总之要干。...

Fragment与Activity通信

Fragment 获取 Activity : 
调用 Fragment 对象的 getActivity()方法, 即可获取 Fragment 嵌入的 Activity 对象;



Activity 获取 Fragment :
-- Fragment 属性 : 在布局文件中, 可以为 元素指定 android:id 和 android:tag 属性
-- 获取方法 : 调用 Activity 的 findFragmentById(int id) 或者 findFragmentByTag(String tag)方法;


Fragment 向 Activity 传递数据 : 

将 Activity 当作接口子类对象, Fragment 中调用 Activity 中的接口方法;

-- Fragment 定义接口 : 在 Fragment 内部定义一个 Callback 接口;
-- Activity 实现该接口 : MyActivity extends Activity implement MyFragment.Callback;
-- Fragment 中获取该接口对象 : 在Fragment 中定义一个 Callback 全局变量, 然后在 onAttach(Activity activity) 方法中, 将 activity 强转为 Callback 对象;
-- 调用接口方法 : 上面获取了 Callback 对象, 即Activity对象, 调用 Activity 中的 接口方法, 就能在 Fragment 中调用 Activity 对应的方法了;



Activity 向 Fragment 传递数据 :
-- 创建 Bundle 数据包 : 创建一个 Bundle 对象, 把要存放的键值对 放到这个对象中;
-- 设置 Bundle 对象给 Fragment : 调用 Fragment 对象的 setArguments(Bundle bundle) 方法, 将 Bundle 对象设置给 Fragment; 然后再相应的Fragment中 getArguments();得到数据
阅读更多
版权声明:欢迎你来转载,不过请带个此Blog链接! https://blog.csdn.net/luojiusan520/article/details/49902237
个人分类: Android
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭