浏览代码

Merge pull request #38 from amuttsch/master

[Android] Back button navigates back now instead of closing webview
Hadrien Lejard 7 年之前
父节点
当前提交
db6a401538
共有 1 个文件被更改,包括 20 次插入0 次删除
  1. 20 0
      android/src/main/java/com/flutter_webview_plugin/WebviewManager.java

+ 20 - 0
android/src/main/java/com/flutter_webview_plugin/WebviewManager.java

@@ -3,6 +3,7 @@ package com.flutter_webview_plugin;
 import android.annotation.TargetApi;
 import android.app.Activity;
 import android.os.Build;
+import android.view.KeyEvent;
 import android.view.View;
 import android.view.ViewGroup;
 import android.webkit.CookieManager;
@@ -26,6 +27,25 @@ class WebviewManager {
         this.webView = new WebView(activity);
         WebViewClient webViewClient = new BrowserClient();
         webView.setWebViewClient(webViewClient);
+
+        webView.setOnKeyListener(new View.OnKeyListener() {
+            @Override
+            public boolean onKey(View v, int keyCode, KeyEvent event) {
+
+                if (event.getAction() == KeyEvent.ACTION_DOWN) {
+                    switch (keyCode) {
+                        case KeyEvent.KEYCODE_BACK:
+                            if (webView.canGoBack()) {
+                                webView.goBack();
+                                return true;
+                            }
+                            break;
+                    }
+                }
+
+                return false;
+            }
+        });
     }
 
     private void clearCookies() {