有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Android应用程序冻结,同时显示一些长文本

在java中的安卓应用程序中,我正在执行http异步请求,然后我想在ScrollView中的TextView中打印结果

当要打印的结果很短时,这项工作很好。但它可能非常长,然后应用程序冻结约3-5秒

我知道这是因为很多工作都是在主线程上完成的,但是有没有办法在分离线程上设置TextView的文本

这是我在httpRequest的onResponse中的代码:

tView2.setText(requestName);
tView3.setText(message1);
tView4.setText(messag2);
tView4.setText(resultBody);
tView5.setText(message3);

如果我把线移走

tView4.setText(resultBody);

(其中resultBody包含一个长字符串)UI不再冻结,其他消息几乎立即打印出来

但当我让它的用户界面冻结,甚至在打印之前的消息,所以我甚至不能设置一个信息的消息,防止用户可能需要一些时间(我在我的代码中尝试,这就是为什么有2 setText的tView4)

我想要的是最简单的解决方案。因此,一个简单的方法来打印信息,以防止用户将是好的

多谢各位


共 (0) 个答案