我正在尝试使用WebView
在我的Android应用中实施Flot图表。基本上我有Fragment
,其中包含WebView
。我还有一个刷新按钮,通过从Web服务检索新数据并将它们放入图表中来刷新Fragment
(以及WebView)。
我遇到的问题是第一次启动时WebView
(创建片段时)要么没有显示图表,要么显示较小的图表(即半屏)。
当我单击刷新时,图表显示没有任何问题,所以问题仅在首次创建片段时。
我在onCreateView
做的是这样说:
chartWebView.loadUrl("file:///android_asset/index.html");
我有一个AsyncTask
从服务器检索数据,然后在WebView上调用javascript,如下所示:
chartWebView.loadUrl("javascript:displayChart(" + data + ")");
我也覆盖了我调用onResume
函数的refresh()
方法。
refresh()
方法基本上执行AsyncTask
重新加载数据,在onPostExecute(...)
调用WebView上的javascript。
任何提示?
答案 0 :(得分:2)
只是一个猜测,但......
webView.loadUrl()
是异步的。我认为您的第一个AsyncTask
在loadUrl
完成之前执行。我建议您在onPageFinished中初始displayChart
。