传递String到loadUrl无法正常工作

时间:2016-04-16 10:53:59

标签: android android-studio

以下代码:

public void onbuttonclick(){
    e1 = (EditText)findViewById(R.id.editText);
    b1 = (Button)findViewById(R.id.button);
    w1 = (WebView)findViewById(R.id.webView);
    b1.setOnClickListener(
            new View.OnClickListener() {
                String url = e1.getText().toString();

                @Override
                public void onClick(View v) {
                    w1.getSettings().setLoadsImagesAutomatically(true);
                    w1.getSettings().setJavaScriptEnabled(true);
                    w1.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);
                    w1.setWebViewClient(new WebViewClient());
                    w1.loadUrl(url);
                }
            }
    );

}

当我输入" https://www.google.com"如果我用" https://www.google.com"在loadUrl()方法中它工作正常。

我是android和java的新手。

2 个答案:

答案 0 :(得分:3)

它无法正常工作的原因是因为您在注册活动时从文本框中获取了网址。此时文本框为空。

实际点击按钮时,您必须阅读网址。 话虽如此,在onClick方法中移动String url = e1.getText().toString();行。

答案 1 :(得分:1)

onClick方法中获取网址:

b1.setOnClickListener(
            new View.OnClickListener() {


                @Override
                public void onClick(View v) {
 String url = e1.getText().toString();
                    w1.getSettings().setLoadsImagesAutomatically(true);
                    w1.getSettings().setJavaScriptEnabled(true);
                    w1.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);
                    w1.setWebViewClient(new WebViewClient());
                    w1.loadUrl(url);
                }
            }
    );