Why direct communication between fragments is not recommended?

后端 未结 2 658
陌清茗
陌清茗 2020-12-11 16:43

while learning android fragments on developer.android.com it is specified that direct communication between two fragment is not recommended. I want to know what will be the

相关标签:
2条回答
  • 2020-12-11 17:17

    Well, with Fragments you aren't always sure if they will be alive and attached at the time of communication. Whether Fragments are attached and available or not might also depend on device layout or size. If you're absolutely sure that your Fragments will both be attached to your activity and available at the same time, then I suppose you can communicate directly.

    Having said that, Fragments are meant to be logical, standalone units. From the docs:

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

    It kind of breaks the model if the fragments are affecting each other directly.

    Why not rather define an interface in your Activity and get Fragment A to call a method in the Activity? Then your Activity can check whether Fragment B is available and can then call the appropriate function in Fragment B.

    Here is the docs suggestion

    0 讨论(0)
  • 2020-12-11 17:42

    A Fragment is just a UI component that does a little more than draw itself. In the scope of this question, its no different from a View.

    So a very comparable question would be: why cannot two Views communicate with each other directly?

    0 讨论(0)
提交回复
热议问题