WebView指令序列有时不是预期的顺序

时间:2013-01-04 00:44:20

标签: android browser webview spinner sequence

我正在尝试根据网络浏览器中当前显示的页面更新微调项目。当我点击后退按钮时,我遇到了问题,因为在getBr函数返回PREVIOUS后,从getUrl()返回的url,而不是更新的URL。浏览器按预期更新,我只是为我的url变量得到一个过时的值。我假设我看到了与多个线程相关的问题。谁能告诉mw如何确保我的goBack()和getUrl()指令按预期的顺序工作? 谢谢!

    Button back_button = (Button) findViewById(R.id.back_button);
    back_button.setOnClickListener(new View.OnClickListener() {
        @Override
        public synchronized void onClick(View view) {
            if (browser.canGoBack())
                browser.goBack();
                String url = browser.getUrl();
                Log.v(LOG_TAG, "Browser URL = " + url);
                setDocSpinner(doc_spinner, url);
        }
    });

1 个答案:

答案 0 :(得分:0)

考虑从WebViewClient而不是后退按钮的监听器执行此操作。覆盖onPageStartedonPageFinished可能特别有用。