无法从webView.geturl获取任何返回值,(代码如下所示)

时间:2012-01-16 06:02:32

标签: java android webview

public class Browser1Activity extends Activity {

    TextView url;
    WebView ourBrow;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.main);

        ourBrow = (WebView) findViewById(R.id.wvBrowser);
        url = (TextView) findViewById(R.id.tvURL);
        // cancel the web intent that default in android setting
        ourBrow.setWebViewClient(new WebViewClient());

        // webView seeting
        ourBrow.getSettings().setJavaScriptEnabled(true);
        ourBrow.getSettings().setLoadWithOverviewMode(true);
        ourBrow.getSettings().setUseWideViewPort(true);

        try {
            ourBrow.loadUrl("https://www.google.com.au");
        } catch (Exception e) {
            e.printStackTrace();
        }

        url.setText(ourBrow.getUrl());
    }

}

为什么我无法获得webView.geturl的返回值? TextView的设置完全正常,WebView也可以正常工作,但是当我启动模拟器时,网址没有显示任何内容。 ourBrow设置有什么问题吗?

2 个答案:

答案 0 :(得分:2)

他们在你的代码中没有问题,因为当你试图在Text上设置url时,你没有加载url。你必须在web视图上加载网址后设置文本以测试你的代码只需添加一个按钮并点击那个按钮做同样的事情

 url.setText(ourBrow.getUrl());

正如您在代码中所做的那样,您获得了文本的网址。

答案 1 :(得分:0)

为了让您的Activity访问Internet并在WebView中加载网页,您必须将INTERNET权限添加到Android Manifest文件中:

<uses-permission android:name="android.permission.INTERNET"/>