我希望在通过套接字从服务器接收后在textView中创建一个String,我试试这个但它仍然无效。
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:我可以将字符串显示在日志控制台中。
答案 0 :(得分:0)
假设您的代码是从Activity
内部运行的,请尝试将call
更改为如下所示:
@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是关于runOnUiThread
的更多内容。
答案 1 :(得分:0)
您可以使用:
changeUserSelection(value){
this.updateForm.controls['user'].updateValue(value);
}