1. Nimm jetzt an unserem Uhans - 3. ADVENT - Gewinnspiel teil - Alle Informationen findest Du hier!

Toast in einem Async-Task anzeigen

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von samarek, 24.11.2011.

  1. samarek, 24.11.2011 #1
    samarek

    samarek Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    101
    Erhaltene Danke:
    2
    Registriert seit:
    24.10.2011
    Hi,
    hat mal jemand eine Idee wie ich aus einem Toast heraus einen Async .... ach Quatsch, umgekehrt.
    ... wie ich aus einem AsyncTask heraus einen Toast anzeigen kann.

    Er will ja dafür dieses Looper.prepare() haben (was auch immer das ist), aber wenn ich das aufrufe zeigt er mir keinen Toast an.
    Bin schon soweit dass ich weiss dass ich es in onProgressUpdate packen muss, aber mein Problem ist halt dass der Toast eine Fehlermeldung ausgeben soll wenn beim Ausführen von dem Task eine Exception ausgelöst wird.
    Jetzt hab ich aber keine Ahnung wie ich im onProgressUpdate an die Exception komme die geworfen wird.
     
  2. Neeldarax, 24.11.2011 #2
    Neeldarax

    Neeldarax Erfahrener Benutzer

    Beiträge:
    170
    Erhaltene Danke:
    31
    Registriert seit:
    07.12.2010
    samarek bedankt sich.
  3. samarek, 24.11.2011 #3
    samarek

    samarek Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    101
    Erhaltene Danke:
    2
    Registriert seit:
    24.10.2011
    ahja ...
    etwas tricky, aber so ...
    Code:
    protected Boolean doInBackground(Void... params)
            {
                try
                {
                    jsonLaden("version");
                    netzwerk = liesJsonVersionen();
                    lokal = Datenbank.getVersionen();
                    versionenAktualitätsArray = lokal.vergleich(netzwerk);
                    return true;
                }
                catch (Exception exc)
                {
                    context.runOnUiThread(new Runnable()
                    {                    
                        public void run()
                        {
                            Toast.makeText(context, "Bitte prüfen sie ihre Netzwerkverbindung", Toast.LENGTH_LONG).show();
                        }
                    });
                    cancel(true);
                    context.finish();
                    Log.v("### " + this.toString(), "Fehler in Versionen", exc);
                    return false;
                }
            }
    
    hat es jetzt geklappt
     

Diese Seite empfehlen