6

我在android webview上绘制了一些画布图表,并使用javascript通过隐藏和显示来更改图表,并通过重置其innerHTML来更改标题。

标题只是一个普通的 html 标签 "<div id='title'></div>"

问题是,例如,当我切换图表时,页面呈现不佳。当我选择显示下一个图表并更改标题的 innerHTML 时,标题似乎“记住”了它以前的 innerHTML,并且看起来一个文本与另一个文本重叠。

如果我手动更改手机的方向,似乎会使 webview 重绘其内容(而不是刷新),那么一切都会好起来的。

对此有任何想法吗?或者我可以模拟方向更改事件以使我的 webview 重绘其页面以解决它吗?

4

2 回答 2

1

当您在 webview 中使用透明背景时,似乎会出现此问题。尝试将其添加到您的 CSS 中:

body {
    background-color:black;
}

或者你希望你的背景颜色是什么。

于 2011-08-02T14:10:36.217 回答
0

如果你invalidate()从你的内部调用View,你应该让它重绘自己。当您更改方向时,您的View内容将失效,invalidate()这会迫使它重新绘制其内容。您可以使用此invalidate()方法在不更改方向的情况下重绘您的内容。

invalidate()是您的公共方法,View可以在范围内的任何地方调用。

于 2011-07-22T20:30:12.957 回答