我有一个WebView,我在AsyncTask.doInBackground中使用loadUrl初始化.我将其初始化如下:
webView.post(new Runnable() {
@Override
public void run() {
webView.loadUrl(authURL);
}
});
Run Code Online (Sandbox Code Playgroud)
AsyncTask在Activity.onCreate()中作为最后执行,问题是大多数时候网页没有加载,我看到白屏.如果我用处理程序替换webView,那么一切正常.我在这里错过了什么?
Nik*_*kov 12
doInBackground()如果需要在UI线程上运行,为什么要这样做呢?
Hander.post()和之间的区别View.post()是,Handler将Handler在创建实例的线程上运行您的代码(不一定是UI线程),而View将始终在UI线程上运行它(因为视图绑定到它).
| 归档时间: |
|
| 查看次数: |
1718 次 |
| 最近记录: |