shouldOverrideUrlLoading中的Android线程

时间:2011-06-15 01:18:06

标签: java android multithreading

我在shouldOverrideUrlLoading中有一些代码,它们下载数据,必要时进行转换,并使用loadData或loadUrl在WebView中显示。我把它移动到一个线程(一个实现Runnable的类),现在它不会在下一页加载时锁定UI。不幸的是,有时它会锁定整个应用程序,并在调试时暂停显示它似乎无处可去(死锁?)

我猜这是因为UI不是线程安全的,甚至不是webkit loadData / loadUrl?有没有办法在下载/转换完成后设置某种在UI线程中运行的onFinish操作?或者它是否足以存储当前线程,并在运行另一个线程之前取消它?

1 个答案:

答案 0 :(得分:0)

在线程代码周围添加一个synchronized(WebView){修复此问题。