gpt4 book ai didi

java - setText 未在 Runnable 中更新

转载 作者:行者123 更新时间:2023-11-30 02:00:26 27 4
gpt4 key购买 nike

<分区>

我正在构建一个 Android 应用程序。该应用程序正在从服务器中提取数据,并且应该使用该数据实时更新 TextView。这是我的流程代码,省略了不必要的细节:

public class MainActivity 
{

从 OnCreate 类启动 Runnable:

    protected void OnCreate(...)
{
...
Thread connect = new Thread(runnable);
connect.start();
}

Runnable 类的代码:

    Runnable runnable = new Runnable()
{
public void run()
{
...(setting up server input stuff)
final TextView strDisplay = (TextView)findViewById(R.id.stringDisplay);
while (!Thread.currentThread ().isInterrupted())
{
try
{
final String serverInput = subscriber.recvStr(); //receiving server input
strDisplay.post(new Runnable()
{
public void run()
{
//Updating TextView "strDisplay" with the latest server data
strDisplay.setText(serverInput);
}
});
}
catch...
}
}
};
}

但是,当我运行它时,只有它接收到的第一个服务器输入显示在 TextView 中,然后尽管有更多的输入(我用日志检查过),但 TextView 不会更新。在控制台中,我在打印第一个输入后读取“onFinishInput”,然后在控制台上开始输入流。我认为启动一个新的 Runnable 将允许它更新,但它没有做任何事情。

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com