由于一些奇怪的原因,当我使用AsyncTask连接到网页时,我的应用程序的UI几乎落到了冻结点,而AsyncTask正在连接到网页。
我认为这是因为连接通常需要很长时间,至少需要4秒。
我希望能够在Thread完成后更新我的TextView,但除了使用AsyncTask之外,我怎么在Android中这样做呢?
答案 0 :(得分:1)
有几种方法可以做到这一点:
例如,您可以创建一个新的Handler(),并且当您想在主线程中运行代码时执行:
public static Handler interfaceHandler = new Handler();
...
mInterfaceHandler.post(new Runnable() {
@Override
public void run() {
//Your stuff
}
});
要完成此信息,Android中的所有视图都可以发布此帖子(Runnable)。此方法为其任务添加了一个runnable,因此建议不要使用视图,因为App会慢下来。静态处理程序非常适合实现,并且非常容易实现
答案 1 :(得分:0)
这样的事情应该有效
runOnUiThread(new Runnable() {
public void run() {
// do some stuff here
}
});