2016-03-31 2 views
0

Ich möchte eine Zeichenfolge in einem textView nach dem Empfang von Server über Socket, versuche ich dies, aber es funktioniert immer noch nicht.Android machen String in Textansicht über Socket wiederhergestellt

socket.on("message", new Emitter.Listener() { 

     @Override 
     public void call(Object... args) { 
      String data = (String) args[0]; 
      TextView text = (TextView) findViewById(R.id.text); 
      text.setText(data); 
     } 

PS: Ich kann die Zeichenfolge in Protokollkonsole anzeigen.

Antwort

0

Mit der Annahme der Code aus dem Inneren eines Activity ausgeführt wird, versuchen call so aussehen zu ändern:

@Override 
public void call(Object... args) { 
     runOnUiThread(new Runnable() { 
      @Override 
      public void run() { 
       String data = (String) args[0]; 
       TextView text = (TextView) findViewById(R.id.text); 
       text.setText(data); 
      } 
     }); 
} 

Here einige über runOnUiThread mehr lesen ist.

+0

es funktioniert jetzt dank – yassine

0

können Sie verwenden:

text.post(new Runnable() { 
    text.setText(data); 
});