2016-06-13 12 views
-2

Ich habe versucht, mit Thread, aber es war nicht erfolgreich, die textView nicht geändert, nachdem ich den TextView Text mit EditText als Eingabe geändert. Hilf mir bitte!Wie TextView Text dauerhaft in Android ändern?

 Thread thread = new Thread(new Runnable() { 
     @Override 
     public void run() { 
      //shared is SharedPreferences object that I define as an instance variable 
      String inp = shared.getString("input", def); 

      textView.setText(inp); 
      Log.d("input",inp); 
    }); 

    thread.start(); 
+0

Können Sie erklären, was Sie genau tun wollen? –

Antwort

0

versuchen Sie dies:

Thread thread = new Thread(new Runnable() { 
    @Override 
    public void run() { 
     //shared is SharedPreferences object that I define as an instance variable 
     String inp = shared.getString("input", def); 
     runOnUiThread(new Runnable() { 

        @Override 
        public void run() { 

         textView.setText(inp); 
         Log.d("input",inp); 
        } 
       }); 
}); 

thread.start(); 

für UI aktualisieren Sie die wichtigsten UI-Thread verwenden soll. zu sehen:

Android runOnUiThread explanation

+0

Oh okay, ich verstehe es. Vielen Dank. –

0

Warum machst du es in einem separaten Thread. Selbst wenn Sie das möchten, können Sie die Benutzeroberflächenkomponente wie textView in einem Nicht-UI-Thread nicht aktualisieren.

Verwandte Themen