为什么不build议片段之间的直接通信?

当在developer.android.com上学习android片段时,指定不build议在两个片段之间进行直接通信。 我想知道两个碎片之间的通信会失败的结果和后果是什么?

Solutions Collecting From Web of "为什么不build议片段之间的直接通信?"

那么,对于碎片,你不一定能确定它们在交stream的时候是否还活着。 碎片是否连接和可用还可能取决于设备的布局或大小。 如果你确定你的碎片既可以同时被join到你的活动中,那么我想你可以直接进行交stream。

话虽如此,碎片意味着是合乎逻辑的独立单位。 从文档:

You can think of a fragment as a modular section of an activity 

如果这些片段直接相互影响的话,这种模式会被打破。

为什么不在你的Activity中定义一个接口,并让Fragment A在Activity中调用一个方法? 然后您的活动可以检查片段B是否可用,然后可以调用片段B中的相应function。

这是文档build议

一个片段只是一个UI组件,只不过是自己绘制而已。 在这个问题的范围内,它与View没有区别。

所以一个非常相似的问题是:为什么两个Views不能直接相互交stream?