【问题标题】:Problem with using FusionCharts for Android使用 FusionCharts for Android 的问题
【发布时间】:2011-09-28 04:13:43
【问题描述】:

我想在 android 2.2 上使用 FusionCharts(可能在模拟器上)。 我尝试使用 Javascript 和 HTML,但没有得到预期的结果。
有什么帮助吗??

我的代码如下:

WebView web;  
    /** Called when the activity is first created. */  
    @Override  
    public void on Create(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
        setContentView(R.layout.main);  
        web=(WebView)findViewById(R.id.webView1);  
        web.loadUrl("file:///android_asset/Fusioncharts/myChart.html");  
    }  
}  

还有我的 html、xml 文件:

<html>  
<head>  
<title>My First chart using FusionCharts  
</title>  
<script type="text/javascript" src="JavaScripts/FusionCharts.js">     
</script>  
</head>  

<body>  

<div id="chartContainer">FusionCharts will load here!  
</div>  

<script type="text/javascript">  
 <!--       
 var myChart = new FusionCharts("Pie2D.swf?  dataURL=Data.xml","myChartId", "400", "300", "0", "1" );    
  myChart.setXMLUrl("Data.xml");  
  myChart.render("chartContainer");  
// -->   
</script>  
</body>  
</html>  

和 Data.xml :




上面的代码只是显示我:FusionCharts 将在这里加载!

谢谢
斯内哈

【问题讨论】:

  • 我猜这也可以在浏览器上运行?您是否也检查了 javascript 错误? “Pie2D.swf?dataURL=Data.xml”和“myChartId”之间的差距让我很担心——这不应该是 id——chartContainer 吗?
  • 不。这甚至在浏览器上也不起作用。我已经纠正了差距。但是id很好。
  • 如果它没有加载任何错误消息,可能是您没有从正确的位置调用 javascript 文件。确保相对于您的文档正确标记了“JavaScripts/FusionCharts.js”。如果您使用的是 Linux 机器,请确保您的文件具有正确区分大小写的字母
  • 嗨 Sneha,你能通过 Firebug 检查 JavaScript 中是否有任何错误吗?还要检查 FusionCharts.js 是否正在加载。
  • 嗨 Sneha,我可以查看您的完整代码吗,因为我想检查您是否使用任何方法在 java 代码中使用 java 脚本或 html,因为您只是调用 java html 但您没有声明java类中的任何方法都可以使用它

标签: android fusioncharts


【解决方案1】:

编辑>新内容:

您可能需要为 WebView 启用 JavaScript 和插件:

webview.getSettings().setJavaScriptEnabled(true);
webview.getSettings().setPluginsEnabled(true);

http://developer.android.com/reference/android/webkit/WebView.html

What does "install Flash plugin" in WebView mean? How to Enable Flash Plugin in Webview?

您可能还需要为 SWF 和 JS 文件设置正确的路径。请在此处调试或附加代码。

旧内容:

似乎存在 JavaScript 错误或未加载 FusionCharts 以执行 Duniyadnd 所述的渲染。

如果发现任何错误,请检查 Android 调试(使用adb logcat 或其他进程)。

此外,我使用 PhoneGap 做了一个实现,您可以从中签出:

PhoneGap API to query call-logs

这是一个小型的 PhoneGap Android 应用程序,它具有 FusionCharts 来显示来自设备的通话记录。该帖子虽然展示了创建插件以获取呼叫日志,但您可能会派生出您需要的其他元素。希望这可能会有所帮助。

【讨论】:

  • 谢谢大家。但是由于 phonegap 是第三方库,我不想去它
  • 是的,明白了。您也可以使用本机代码来执行此操作。我需要检查一次你的代码并让你知道。同时,如果您的模拟器中有 Flash 播放器,请告诉我。
  • 是的。我安装了 Flash 播放器。
  • 在这种情况下,我们需要检查您使用的 HTML 是否在普通浏览器中运行。
  • 它甚至无法在我的 Windows XP 桌面 (myChart.html) 中的 IE 7 浏览器上运行。它显示相同的结果。(FusionCharts 将在此处加载!)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-08-19
  • 1970-01-01
  • 2021-01-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多