Ja ich lese fast alle Themen über Webview Fortschrittsbalken, versuchte fast alles. Aber sie funktionieren nicht für mich, meine App stürzt ab, wenn ich die Beispiele benutze.Android WebView OnClick ProgressBar
Ich benutze lokale (ondevice) html in meiner webview app und ich will Fortschrittsbalken (Benachrichtigung) nach den Links angezeigt, die auf diesem HTML geklickt werden. Hier ist mein Code.
Activity_Main.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.dijitalyayincim.cekmekoy.cekmekoy_web.MainActivity">
<WebView
android:id="@+id/activity_main_webview"
android:layout_width="match_parent"
android:layout_height="match_parent" >
</WebView>
</RelativeLayout>
Main_Activity.java
package com.dijitalyayincim.cekmekoy.cekmekoy_web;
import android.support.v7.app.ActionBar;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.webkit.WebSettings;
import android.webkit.WebView;
public class MainActivity extends AppCompatActivity {
private WebView mWebView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ActionBar ab =getSupportActionBar();
ab.setDisplayShowHomeEnabled(true);
ab.setIcon(R.mipmap.ic_launcher);
mWebView = (WebView) findViewById(R.id.activity_main_webview);
WebSettings webSettings = mWebView.getSettings();
webSettings.setJavaScriptEnabled(true);
mWebView.loadUrl("file:///android_asset/www/index.html");
mWebView.setWebViewClient(new MyAppWebViewClient());
}
@Override
public void onBackPressed() {
if(mWebView.canGoBack()) {
mWebView.goBack();
} else {
super.onBackPressed();
}
}
}
MyAppWebViewClient.java
package com.dijitalyayincim.cekmekoy.cekmekoy_web;
import android.content.Intent;
import android.net.Uri;
import android.webkit.WebView;
import android.webkit.WebViewClient;
/**
* Created by ahmet.sevinc on 18.11.2016.
*/
public class MyAppWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if(Uri.parse(url).getHost().endsWith("cekmekoy.info")) {
return false;
}
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
view.getContext().startActivity(intent);
return true;
}
}
danke, ich habe geändert About_Activity MainActivity, Ihre URL zu "file: ///android_asset/www/index.html" aber jetzt bekomme ich diesen Fehler webView = (WebView) findViewById (R.id.webView); Fehler: (38, 46) error: kann keine Symbolvariable finden webView – bahmet
du brauchst eine Layoutdatei, die ein webview Element hat – vishnumm93
YESS wenn ich Android geändert habe: id = "@ + id/activity_main_webview" zu android: id = "@ + id/webview "in activity_main.xml hat alles funktioniert ... – bahmet