你如何使WebView工作?

时间:2016-03-10 16:36:34

标签: java android

This this how the layout looks

这就是Java代码的外观:

package com.example.admin.testingwebview;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.webkit.WebView;
import android.widget.EditText;

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
}

public void go(View view){
    EditText editText = (EditText) findViewById(R.id.editText);
    WebView webView = (WebView) findViewById(R.id.webView);

    webView.loadUrl(editText.getText().toString());
}
}

布局XML文件:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.example.admin.testingwebview.MainActivity">

    <EditText
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/editText"
        android:layout_alignParentTop="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_alignParentRight="true"
        android:layout_alignParentEnd="true" />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Go"
        android:id="@+id/button"
        android:layout_below="@+id/editText"
        android:layout_centerHorizontal="true"
        android:onClick="go" />

    <WebView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:id="@+id/webView"
        android:layout_centerHorizontal="true"
        android:layout_below="@+id/button" />
</RelativeLayout>

我在模拟器和真实设备上尝试过它。 EditText和Button部分是A-OK,但Web视图没有显示任何内容。 。 。

我做错了什么?

1 个答案:

答案 0 :(得分:1)

你需要这样的东西

EditText data = (EditText) findViewbyId(R.id.edittext);

String result = data.getText().toString(); //Take URL from edittext

if (!result.startsWith("http://") && !result.startsWith("https://"))
      result = "http://" + result;

如果你没有在链接字符串后设置http,那么webview中就不会显示任何内容,启动BrowserWeb的意图也是如此