Wie übertrage ich einige Daten auf eine andere Fragment
, mit der es auch extras
gemacht wurde intents
?
android
android-fragments
Eugene
quelle
quelle
Antworten:
Verwenden Sie a
Bundle
. Hier ist ein Beispiel:Bundle hat Methoden für viele Datentypen festgelegt. Sehen Sie das
Rufen Sie dann in Ihrem
Fragment
die Daten (z. B. inonCreate()
Methode) ab mit:quelle
Um die vorherige Antwort noch weiter zu erweitern, müssen Sie, wie Ankit sagte, für komplexe Objekte Serializable implementieren. Zum Beispiel für das einfache Objekt:
In dir FromFragment:
in Ihrem ToFragment:
quelle
getArguments () gibt null zurück, weil "es bekommt nichts"
Versuchen Sie diesen Code, um diese Situation zu behandeln
quelle
Vollständiger Code zum Übergeben von Daten mithilfe von Fragment zu Fragment
In der benutzerdefinierten Fragmentklasse
quelle
Nur um frühere Antworten zu erweitern - es könnte jemandem helfen. Wenn Sie
getArguments()
zurückkehrennull
, setzen Sie es auf dieonCreate()
Methode und nicht auf den Konstruktor Ihres Fragments:quelle
quelle
Aus der Aktivitätsklasse:
Senden Sie die Daten mithilfe von Bundle-Argumenten an das Fragment und laden Sie das Fragment
Aus der myFragment-Klasse:
Holen Sie sich die Argumente aus dem Bundle und setzen Sie sie auf xml
quelle
So verwenden Sie Bundle:
Wert aus dem Bundle abrufen:
quelle
Ihr Eingabefragment
Ihr Ansichtsfragment
quelle
Wenn Sie ein Diagramm für die Navigation zwischen Fragmenten verwenden, können Sie Folgendes tun: Aus Fragment A:
So fragmentieren Sie B:
Natürlich muss Ihr Objekt Serializable implementieren
quelle