Warum direkte Kommunikation zwischen Fragmenten nicht empfohlen wird?

8

beim Lernen von android Fragmenten auf developer.android.com wird angegeben, dass direkte Kommunikation zwischen Zwei Fragmente werden nicht empfohlen. Ich möchte wissen, was die Konsequenzen und die Fälle sein werden, in denen die Kommunikation zwischen zwei Fragmenten fehlschlagen würde.

    
Chaitanya 20.07.2012, 06:05
quelle

2 Antworten

9

Nun, mit Fragmenten sind Sie nicht immer sicher, ob sie zum Zeitpunkt der Kommunikation noch am Leben und angeheftet sein werden. Ob Fragmente angehängt und verfügbar sind oder nicht, hängt möglicherweise auch vom Layout oder der Größe des Geräts ab. Wenn Sie absolut sicher sind, dass Ihre Fragmente beide mit Ihrer Aktivität verknüpft und gleichzeitig verfügbar sind, dann können Sie vermutlich direkt kommunizieren.

Nachdem dies gesagt wurde, sollen Fragmente logische, eigenständige Einheiten sein. Aus der Dokumentation:

%Vor%

Es bricht das Modell, wenn sich die Fragmente direkt gegenseitig beeinflussen.

Warum definieren Sie nicht lieber eine Schnittstelle in Ihrer Aktivität und erhalten Fragment A, um eine Methode in der Aktivität aufzurufen? Dann kann Ihre Aktivität prüfen, ob Fragment B verfügbar ist und dann die entsprechende Funktion in Fragment B aufrufen.

Hier ist der Dokumentvorschlag

    
Mike T 20.07.2012, 06:25
quelle
2

Ein Fragment ist nur eine UI-Komponente, die ein wenig mehr als nur zeichnet. Im Rahmen dieser Frage unterscheidet es sich nicht von einer View.

Eine sehr vergleichbare Frage wäre also: Warum können zwei Views nicht direkt miteinander kommunizieren?

    
Vikram Bodicherla 20.07.2012 06:35
quelle

Tags und Links