2016-11-06 5 views
0

Ich mache ein Android-Projekt mit Asynctask, und ich kann TextView Text nicht auf "Laden" gesetzt werden, es ist nur leer, bis die AsyncTask lädt. Wie kann ich dieses Problem überwinden?Android leeren Hintergrund asynctask

Code:

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    TextView textView = (TextView) findViewById(R.id.textView); 
    textView.setText("Loading today's fixtures & results"); 
    HTMLParser parser = null; 
     try { 
      parser = new HTMLoadTask().execute("http://www.skysports.com/football/fixtures-results").get(); 
     } catch (InterruptedException e) { 
      e.printStackTrace(); 
     } catch (ExecutionException e) { 
      e.printStackTrace(); 
     } 
} 
+0

haben Sie versucht, Kommentarcode nach '' textView.setText(); ''? –

Antwort

0

Sie sollten den get() Aufruf am Ende entfernen, da dies für die Aufgabe wartet zu beenden und dann ruft er das Ergebnis. Dies sperrt den UI-Thread.

get()

Waits bei Bedarf für die Berechnung abgeschlossen ist, und ruft dann das Ergebnis.

Ich weiß nicht, was Sie in der AsyncTask tun, aber in OnPostExecute() sollten Sie das Ergebnis der Handhabung und den Text des Textview eingestellt.