在java中的android应用程序中,我正在执行http异步请求,然后我想在ScrollView中的TextView中打印结果。
当打印结果很短时,此工作正常。但它可能很长,然后应用程序冻结约3-5秒。
我知道这是因为在主线程上完成了很多工作,但有没有办法在separeted线程上设置TextView的文本?
为了说明这是我在httpRequest的onResponse中的代码:
tView2.setText(requestName);
tView3.setText(message1);
tView4.setText(messag2);
tView4.setText(resultBody);
tView5.setText(message3);
如果我只是删除该行
tView4.setText(resultBody);
(其中resultBody包含一个长字符串)UI不再冻结,另一条消息几乎立即打印。
但是当我让它在上一条消息的打印之前UI被冻结,所以我甚至无法设置信息消息,阻止用户花费一些时间(我在我的代码中尝试过,它&& #39;为什么tView4上有2个setText ... ..
我想要的是管理它的最简单的解决方案。因此,打印信息消息的简便方法可以防止用户使用。
谢谢。