Webseite per WebView anzeigen lassen

  • Antworten:5
  • Bentwortet
basti38
  • Forum-Beiträge: 45

28.02.2017, 15:40:21 via Website

Hi, ich will eine Webseite in meiner Activity per WebView anzeigen lassen. Hab das ganze folgendermaßen geregelt:

Activity:

public class WebViewActivity extends AppCompatActivity {

    private WebView mWebView;

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

        mWebView = (WebView) findViewById(R.id.activity_main_webview);
        WebSettings webSettings = mWebView.getSettings();
        webSettings.setJavaScriptEnabled(true);
        mWebView.loadUrl("http://kicker.de");

    }

XML:

<?xml version="1.0" encoding="utf-8"?>
<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:id="@+id/container"
    tools:context=".WebViewActivity"
    >


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


</FrameLayout>

Die Activity wird durch ein Menü aufgerufen. Die Permission für Internetzugriff habe ich auch schon in die Manifest-Datei eingefügt.

Leider bekomme ich immer noch einen Fehler, sobald ich die Activity per Menü aufrufe ("App wurde angehalten"). Könnt ihr mir helfen?

Grüße Basti

Antworten
Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

28.02.2017, 16:27:44 via Website

Hallo Basti,
Was sagt LogCat (ErrorLog) in Rot?

LG Pascal //It's not a bug, it's a feature. :) ;)

Antworten
basti38
  • Forum-Beiträge: 45

28.02.2017, 16:28:39 via Website

02-28 15:32:53.175 28486-28486/com.example.standard.measuringapp E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.standard.measuringapp, PID: 28486
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.standard.measuringapp/com.example.standard.measuringapp.WebViewActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'android.webkit.WebSettings android.webkit.WebView.getSettings()' on a null object reference
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3253)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3349)
at android.app.ActivityThread.access$1100(ActivityThread.java:221)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1794)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:158)
at android.app.ActivityThread.main(ActivityThread.java:7224)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'android.webkit.WebSettings android.webkit.WebView.getSettings()' on a null object reference
at com.example.standard.measuringapp.WebViewActivity.onCreate(WebViewActivity.java:29)
at android.app.Activity.performCreate(Activity.java:6876)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1135)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3206)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3349) 
at android.app.ActivityThread.access$1100(ActivityThread.java:221) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1794) 
at android.os.Handler.dispatchMessage(Handler.java:102) 
at android.os.Looper.loop(Looper.java:158) 
at android.app.ActivityThread.main(ActivityThread.java:7224) 
at java.lang.reflect.Method.invoke(Native Method) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120) 

Antworten
Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

28.02.2017, 16:30:49 via Website

Dein WebView Objekt scheint nicht gefunden zu werden:
Attempt to invoke virtual method 'android.webkit.WebSettings android.webkit.WebView.getSettings()' on a null object reference

Ist das FrameLayout dein MainLayout auf das du in der Activity verweist?

LG Pascal //It's not a bug, it's a feature. :) ;)

Antworten
basti38
  • Forum-Beiträge: 45

28.02.2017, 16:32:08 via Website

Nein das FrameLayout habe ich nur in dieser Activity. Ich hoffe ich habe die Frage richtig verstanden.

Antworten
basti38
  • Forum-Beiträge: 45

28.02.2017, 16:34:25 via Website

Ohweih, ich hatte nur das falsche Layout drin. Habs angepasst jetzt geht alles. Manchmal sieht man den Wald vor aluter Bäumen nicht. Herzlichen Dank!

Antworten