5

Kontext teilen: Ich habe eine app Activities und Fragments verwenden. Ich pausiere es, um auf einen anderen wie Google Übersetzer zuzugreifen. Von der GTranslate verwende ich den Prozess Intent, um Textdaten an meine App mit intent-filterACTION_SEND zu senden. Auch wenn die erste App im Hintergrund war, wird ihre aktuelle activity neu erstellt.Fragment wieder nicht mit ihrer Aktivität nach Absicht mit

Das Problem ist, dass die fragment zu den erwähnten activity verbunden ist auch nicht neu erstellt und ärgerlicher nicht wieder aufgenommen (die onResume Methode des Fragments genannt werden nie).

Frage: Warum intent durch Apps in Verwendung fragments folgen nicht ihren Lebenszyklus der Eltern Aktivität und nicht zumindest wieder aufgenommen? Gibt es eine Möglichkeit, dieses Problem zu umgehen?

Oder bin ich total falsch?

Antwort

0

Verwenden Sie eine Fragmentaktivität anstelle von Aktivität.

Von FragmentActiviy:

Dispatch-onResume(), um Fragmente. Beachten Sie, dass zur besseren Interoperation mit älteren Versionen der Plattform zum Zeitpunkt dieses Aufrufs die Fragmente, die an die Aktivität angehängt sind, nicht wiederaufgenommen werden. Das bedeutet, dass der vorherige Zustand in in einigen Fällen noch gespeichert werden kann und keine Fragmenttransaktionen zulassen, die den Status ändern. Um die richtig mit Fragmenten in ihrem richtigen Zustand zu interagieren, sollten Sie stattdessen {@link # onResumeFragments() überschreiben.

also der richtige Ort, um Ihre Fragmente in Ihrem FragmentActivity zu manipulieren, wird das Überschreiben der onResumeFragments Methode wie folgt:

protected void onResumeFragments(){  
super.onResumeFragments(); 

     // YOUR STUFF IS HERE 
} 
+0

Auch in Fragmenten in 'onResumeFragments' Manipulation, es funktioniert nicht. – damson

+0

Einige Code-Schnipsel von dem, was Sie tun, wären hilfreich. Nach dem erneuten Lesen Ihres Posts klingt es so, als ob Sie eine andere Instanz Ihrer App mit der Google Übersetzer-Share Intent öffnen, indem Sie etwas wie onActivityResult(), bundle usw. verwenden, um die Daten von GTranslate zu erhalten. t erhalten die Daten und auch das ursprüngliche Fragment wird gestoppt. – Rick

Verwandte Themen