2013-03-08 54 views
0

我有一个应用程序,我通过套接字接收文本,我希望它从不是onCreate()的一部分的方法更新editText。我有这种方法:更新EditText外onCreate()

public void addToEditText(String message) 
{ 
    editText.append(message); 
} 

然而,当我调用这个方法editText仍然是空的。我究竟做错了什么?

这是我的新方法看起来像它仍然没有工作:

private void addToEditText(final String message) 
    { 
     new Handler().post(new Runnable(){ 
      public void run(){ 
       chatWindow.append(message); 
      } 
     }); 
    } 
+0

你需要给我们更多的相关代码。 'EditText.append()'本身是有效的,但我们需要知道对'addToEditText()'的调用存在于哪里。 – Ole 2013-03-08 14:55:19

回答

0

你更新的EditText在其上下文UI线程的任何地方。如果您想更新EDITTEXT了UI线程的一侧,然后创建活动为您提供Handler和使用Handler.post()方法

+0

如果你发布一些代码,我会帮你 – Pragnani 2013-03-08 14:53:58

+0

我加了这个,它不工作 – Josh 2013-03-08 14:58:25

+0

@Josh确保你已经在onCreate中创建你的处理程序对象 – Pragnani 2013-03-08 14:59:30

0

你也可以试试这个:

private void addToEditText(final String message) 
{ 
    chatWindow.post(new Runnable(){ 
     public void run(){ 
      chatWindow.append(message); 
     } 
    }); 
}