片段间通信适用于嵌套片段吗?

2024-02-17

Android 开发者网站有一个很棒的文章 http://developer.android.com/training/basics/fragments/communicating.html关于如何使用接口进行通信:

  1. A Fragment及其托管Activity
  2. Two Fragment由同一主办者Activity

我正在努力将这个概念应用到嵌套片段。尤其,getActivity() or Fragment#onAttach(Activity)告诉你什么Activity正在主持一个Fragment.

嵌套片段的等效项是什么? “孩子”如何Fragment知道什么是“父母”Fragment它包含在?如果不知道这一点,孩子怎么能Fragment将事件传递给其父级Fragment?

一个明显的方法是广播孩子的意图Fragment并有父母Fragment收听广播,但我宁愿使用interface基于的方法。


原来有一个获取父片段() http://developer.android.com/reference/android/support/v4/app/Fragment.html#getParentFragment%28%29引入的方法是为了满足嵌套片段的需要。它可用于android.app.Fragment从 API 17 开始,但可以在旧版本上使用android.support.v4.app.Fragment.

我不敢相信我忽略了这个 API!

EDIT:

我碰到这个要点 https://gist.github.com/keyboardr/5455206这使得这个找出父组件的过程(是否Fragment or Activity)简单、优雅、安全!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

片段间通信适用于嵌套片段吗? 的相关文章

随机推荐