100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > android webview返回显示空白页 Android:WebView的方法goBack()显示一个空白页面

android webview返回显示空白页 Android:WebView的方法goBack()显示一个空白页面

时间:2019-09-10 05:38:16

相关推荐

android webview返回显示空白页 Android:WebView的方法goBack()显示一个空白页面

我处理这个问题的方法是使用loadDataWithBaseURL加载根页面后保留一个本地堆栈指针,指向加载页面的数量。返回时,如果我的指针命中1,我在根级别并使用loadDataWithBaseURL重新加载根页面。我使用这段代码在带有片段的活动中,所以这些片段实现了接口IBackButtonListener,它帮助我捕获主活动中的后退按钮并将事件传播到当前片段。如果该片段返回true,则意味着它处理了该事件。

IBackbuttonListener.java

public interface IBackButtonListener {

public boolean onBackButtonPressed();

}

片段实现IBackButtonListener并且具有从HTML数据加载的网页视图。

private int historyStackPointer = 0;

...

@Override

public boolean onBackButtonPressed() {

boolean rtn = false;

if (webView.canGoBack()) {

if(historyStackPointer > 1) {

webView.goBack();

historyStackPointer--;

rtn = true;

}else{

if(historyStackPointer == 1) {

// Reload the html data

webView.loadDataWithBaseURL("file:///android_asset/", html_data, "text/html", "UTF-8", null);

historyStackPointer = 0;

rtn = true;

}else{

webView.loadUrl("about:blank");

rtn = false;

}

}

} else {

rtn = false;

}

return rtn;

}

html_data是一个带页面html的字符串。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。