-1

我制作了一个 webview 应用程序。但它不起作用。当我在安卓设备上测试它时他被卡住了

全屏活动.java

package com.solidos.neshaniha;

import android.app.Activity;
import android.os.Bundle;
import android.webkit.WebView;

public class FullscreenActivity extends Activity {

    private WebView webView;

    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_fullscreen);

        webView.loadUrl("http://www.mywebsite.nl/");



    }


}

activity_fullscreen.xml

<FrameLayout 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:background="#0099cc"
 tools:context=".FullscreenActivity" >

 </FrameLayout>

谁能帮我?

谢谢

4

5 回答 5

1

您没有初始化 webview。

像这样 :

private WebView webView;

webview = (Webview)findViewById(R.id.webview1);
WebSettings settings = webview.getSettings();
settings.setJavaScriptEnabled(true);
webview.setScrollBarStyle(WebView.SCROLLBARS_OUTSIDE_OVERLAY);
webview.loadURL("nananan");
于 2013-07-02T12:51:39.807 回答
1

您根本没有网络视图。将布局更改为:

<FrameLayout 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:background="#0099cc"
    tools:context=".FullscreenActivity" >

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

</FrameLayout>

然后在你的活动中做:

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_fullscreen);

    webView = (WebView) findViewById(R.id.webView);
    webView.loadUrl("http://m.neshaniha.org/");
}

还要确保这是在您的manifest.xml

<uses-permission android:name="android.permission.INTERNET" />
于 2013-07-02T12:51:50.137 回答
0

在 xml 中添加 webView,如下所示:

<FrameLayout 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:background="#0099cc"
tools:context=".FullscreenActivity" >

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

</FrameLayout>

请按如下方式初始化 WebView:

WebView webView = (WebView)findViewById(R.id.webView);
webView.setWebViewClient(new WebViewClient());
webView.loadUrl("http://m.neshaniha.org/");
于 2013-07-02T12:52:29.093 回答
0

首先是这样:

WebView myWebView = (WebView) findViewById(R.id.webview);

你应该定义@+id你的WebView,像这样:

<WebView  xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/webview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>
于 2013-07-02T12:53:56.863 回答
0

在您的 java 代码中,您将 WebView 声明为成员变量,但您没有将其初始化为任何内容。因此,当您尝试打开其中的 URL 时,您会得到一个NullPointerException. 您的代码有两个问题。

首先,您需要将 WebView 添加到您的布局中:

<FrameLayout ...>
    <WebView android:id="@+id/webview" ... />
</FrameLayout>

然后在你的java代码中你需要找到这个webview并在加载url之前将它分配给你的变量:

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_fullscreen);

    webView = (WebView)findViewById(R.id.webview);
    webView.loadUrl("http://m.neshaniha.org/");
}
于 2013-07-02T12:54:19.337 回答