gpt4 book ai didi

loadDataWithBaseURL 中 onBack 上的 Android 黑屏

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:32:09 24 4
gpt4 key购买 nike

可能它会有一个简单的解决方案,但我在这里阅读了很多主题,但没有办法。在 ListView 中,如果我点击一行,它会打开一个新的 Activity。在该 Activity 中,我制作了一个 httpget,并使用我从该 httpget 中需要的内容创建了一个 html 字符串(检索到的网页的一部分)。

所以我简单地制作了一个loadDataWithBaseURL("http://base_path.com/", html, mime, encoding, null)

它按预期工作,我查看了带有链接和图像的网页。现在问题来了……如果我点击一个图像,我会在那个窗口中看到大图像,但是一旦我按下电话上的“后退”,我就会看到一个白页。我知道这是由“null”参数引起的,但是......我应该放些什么才能再次看到 html 页面?我试图用“html”代替 null 但我在 webview 中看到了 html 代码!

这是我用来覆盖后退按钮的 onKeyDown:

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
// Check if the key event was the BACK key and if there's history
if ((keyCode == KeyEvent.KEYCODE_BACK) && webView.canGoBack()) {
webView.goBack();
return true;
}
// If it wasn't the BACK key or there's no web page history, bubble up to the default
// system behavior (probably exit the activity)
return super.onKeyDown(keyCode, event);
}

最佳答案

我在这个答案中找到了一些信息: Android: WebView's method goBack() shows a blank page

您需要提供一个 URL 以在调用时返回

loadDataWithBaseURL("http://base_path.com/", html, mime, encoding, null);

您传递的是 null,因此默认为“about:blank”。试试这个:

String baseUrl = "http://base_path.com/";
loadDataWithBaseURL(baseUrl, html, mime, encoding, baseUrl + filename);

关于loadDataWithBaseURL 中 onBack 上的 Android 黑屏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8974102/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com