我第一次创建这个活动时,一切都很顺利。但是,在我从菜单中选择更改一些字符串值的文本并使用webview设置后,出现了问题。
webview.loadData(result, "text/html; charset=UTF-8", null);
webview.loadData(result, "text/html; charset=UTF-8", null);
我必须要做两次,否则webview会保持不变。有人知道这是为什么吗?因为结果字符串相同,为什么webview还要强制我加载两次数据?
我第一次创建这个活动时,一切都很顺利。但是,在我从菜单中选择更改一些字符串值的文本并使用webview设置后,出现了问题。
webview.loadData(result, "text/html; charset=UTF-8", null);
webview.loadData(result, "text/html; charset=UTF-8", null);
我必须要做两次,否则webview会保持不变。有人知道这是为什么吗?因为结果字符串相同,为什么webview还要强制我加载两次数据?
webview.loadDataWithBaseURL(null,result,"text/html", "utf-8", null);
我不知道你的问题是什么,但根据Webview文档,你可能错误地使用了loadData方法:
你可能应该这样调用你的webview:
webview.loadData(result, "text/html", "UTF-8");
不知道它是否能完全解决你的问题。
使用loadDataWithBaseURL确实可以刷新数据,但它会忽略CSS body的背景颜色!... 至少它无法解析“%23000000”,而这在loadData中是有效的。
public void clearCache (boolean includeDiskFiles)
或public void clearHistory ()
然后看看它是否有效。我现在没有时间测试,因为我正在忙其他事情。所以请告诉我它们是否有效。谢谢。 - Owen Zhaopublic void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); webview = new WebView(this); webview.getSettings().setBuiltInZoomControls(true); setContentView(webview);
- Owen Zhao