繁体   English   中英

Android Web浏览器无法打开url

[英]android web browser does not open url

我想通过浏览器打开URL,但是当我单击按钮时它没有打开URL,请告诉我我在哪里出错。 这是java文件的代码。

 public class MainActivity extends AppCompatActivity {

    Button button;
    EditText editText;
    WebView webView;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        button = (Button)findViewById(R.id.but);
        editText = (EditText)findViewById(R.id.edittext);
        webView = (WebView)findViewById(R.id.webView);



    }


    public void Goo(View view){
        String url = editText.getText().toString();
        webView.getSettings().setLoadsImagesAutomatically(true);
        webView.getSettings().setJavaScriptEnabled(true);
        webView.loadUrl(url);
    }
}

这是xml文件

    <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    >


    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Enter url"
        android:id="@+id/textView"
        />
    <EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/edittext"/>

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:onClick="Goo"
        android:text="Go"
        android:id="@+id/but"
        />

    <WebView
        android:layout_width="fill_parent"
        android:layout_height="match_parent"
        android:id="@+id/webView" />


</LinearLayout>

当我单击按钮时,它不会打开页面,而在logcat中,它会显示如下消息 在此处输入图片说明

在活动中,只需复制粘贴以下代码即可...

public class MainActivity extends AppCompatActivity {

    Button button1, button2;
    EditText editText;
    WebView webView;
    String url;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        button1 = (Button)findViewById(R.id.but);
        button2 = (Button)findViewById(R.id.but1);
        editText = (EditText)findViewById(R.id.edittext);
        webView = (WebView)findViewById(R.id.webView);
        button1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                url=editText.getText().toString();
                url="http://"+url;
                loadUrl(url);
            }
        });
       button2.setOnClickListener(new View.OnClickListener() {
           @Override
           public void onClick(View view) {
               url="http://www.stackoverflow.com";
               loadUrl(url);
           }
       });

    }

    public void loadUrl(String url) {
        webView.getSettings().setJavaScriptEnabled(true);
        webView.getSettings().setBuiltInZoomControls(true);
        webView.getSettings().setUseWideViewPort(true);
        webView.getSettings().setLoadWithOverviewMode(true);
        webView.getSettings().setDomStorageEnabled(true);
        webView.setVisibility(View.VISIBLE);
            webView.loadUrl(url);
            webView.setWebViewClient(new WebViewClient() {
                @Override
                public boolean shouldOverrideUrlLoading(WebView view, String url) {
                    view.loadUrl(url);
                    return true;
                }
            });
        }
}

并在清单文件中添加这两行。

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

在xml中,我添加了

 <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Go"
            android:id="@+id/but"
            />
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="fb"
        android:id="@+id/but1"
        />

尝试这个。 在您的onCreate

button.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View v) {
        // call your Goo method here 
    }
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM