So übergeben Sie Daten von einer Aktivität an ein Fragment. Es ist gut dokumentiert, aber leider funktioniert keine Lösung für mich.So senden Sie Daten von AsyncTask an Fragment
Ich möchte Daten aus einer inneren AsyncTask-Klasse innerhalb meiner Hauptaktivität an ein anderes Fragment senden.
Die populärste Antwort ist Bundle zu verwenden, so habe ich versucht, die folgenden:
AsyncTask:
Bundle bundle = new Bundle();
bundle.putString("test", "From AsyncTask");
MyFragmentClass fragobj = new MyFragmentClass();
fragobj.setArguments(bundle);
Fragment:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
rootView = inflater.inflate(R.layout.fragment_one, container, false);
String value = getArguments().getString("test");
Log.i("valueTest", value);
return rootView;
}
Die Zeichenfolge wird an das Fragment nicht weitergegeben werden wie ich folgendes erhalte:
"java.lang.NullPointerException: Attemp t, um die virtuelle Methode 'java.lang.String android.os.Bundle.getString (java.lang.String)' für eine Nullobjekt-Referenz aufzurufen "
Ich würde mich über jede Hilfe freuen.
Was ist Ihr AsyncTask Code ist? –
Stellen Sie sicher, dass Sie keine andere Instanz von 'MyFragmentClass' in der' FragmentTransaction' hinzufügen. Außerdem würde der Code, den Sie für sich freigegeben haben, einen Fehler enthalten. Sie haben die Anführungszeichen hier nicht geschlossen: 'bundle.putString (" test "," Von AsyncTask); ' – SlashG
Vielen Dank für Ihre Vorschläge Cgx Lösung arbeitete –