Mit Beobachtbaren in Android

Ich umsetzen wollen einen Navigation View mit vielen Fragmente, die hängen Total auf einen definierten Wert in der MainActivity. Ich weiß, dass die Variablen in der MainActivity aufgerufen werden kann mit definierten Methode in MainActivity aus anderen Fragmente zu erhalten die Wert, aber der Haken ist hier, dass der Wert der Variablen in der MainActivity kann ändern (läuft auf einem AsyncThread). Nun, ich entweder den code ändern, so dass meine Fragmente aktualisieren Ihren Wert basierend auf einen event in dem fragment selbst oder verwenden Sie SharedPreference. Aber ich will nicht von SharedPreferences, weder müssen überprüfen, ob die änderung des Werts unnötig viele Male.

Ich weiß, in RxJS, verwenden wir Beobachtbaren, dass wird Asynchron ausgeführt und funktioniert in einer Weise ähnlich einem Förderband. Ein bisschen googeln über die offiziellen docs : Beobachtbare bestätigt meine Vermutung, der etwas ähnliches in Android, aber konnte keine richtige Anleitung oder Erklärung, wie es zu implementieren. So, bin auf der Suche nach einem einfachen code-Schnipsel geben könnte Klarheit, um zu Beobachten, wie funktioniert Android, und wenn es ist Async und wenn die basiert ähnlich RxJS Durchführung. (Nein, ich will nicht RxJS Umsetzung)

Test-Fall:

MainActivity : int a, b (need observable for both variables)
Frag1 : int a1 , b1, a1changed(),b1changed()
Frag2 : int a2 , b2, a2Changed(), b2changed()

MainActivity enthält Ganzzahlen, dessen Wert bei änderung widerspiegeln sollte, die in der entsprechenden ganzen zahlen über die Fragmente und fordert separater Funktion für jedes Fragment auf die Veränderung bemerkt.

  • Sie können entweder Java ist Beobachtbar als pro die docs, die du verlinkt hast zu oder der Umsetzung Ihrer eigenen. Ich persönlich empfehle, eine eigene Implementierung der Muster in der Reihenfolge zu lernen, ist es gut. Es gibt Tonnen von tutorials auf dem Netz zu verwenden. Wenn es hilft, könnte man diese Antwort von mir, wo ich versuchte zu erklären, ist es so einfach, wie ich konnte 🙂
  • Natürlich gibt es tutorials online, aber das problem mit Ihnen ist, dass Sie in der Regel beziehen sich auf bestimmte Fälle, die nicht erforderlich sind. Bin sicher, wenn ich sitzen für einen halben Tag, tracing es aus, ich würde eine Antwort erhalten. Da ich aber nicht jetzt, ich bat um ein einfacheres Beispiel zu deren Umsetzung. Das wird sicher anderen helfen, die auch wie ich nicht wollen, zu gehen, durch die ganze Sache nur noch und sind auf der Suche für eine einfachere Erklärung für die Android-Verhalten mit Observablen.
InformationsquelleAutor Kaushik NP | 2017-03-23
Schreibe einen Kommentar