使用iframe的webview-“后退”按钮可在iframe中返回

时间:2018-11-01 10:24:48

标签: android iframe android-webview

我有一个android项目,仅显示网络视图。 我使用此功能通过设备的后退按钮转到上一页:

 @Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    if (event.getAction() == KeyEvent.ACTION_DOWN) {
        switch (keyCode) {
            case KeyEvent.KEYCODE_BACK:
                webView = findViewById(R.id.webView);                  

                if (webView.canGoBack()) {
                    webView.goBack();
                    return true;
                } else {
                   // alert dialog...
        }

    }
    return super.onKeyDown(keyCode, event);
}

,此功能可通过js在网络视图中返回上一页:

goBack()
{
history.go(-1);
}

在这两个函数中,如果页面包含iframe,则iframe中的页面将返回,而不是父页面。

如何通过单击“后退”按钮使上级页面返回,而不使iframe中的页面返回?

谢谢!

1 个答案:

答案 0 :(得分:0)

尝试这样

goBack() {

        if(webView.canGoBack()) {
            webView.goBack();
        } else {
            finish()
        }

}