を使用して、Fusionchartsのcolumn3dチャートをMonoTouchプロジェクトに埋め込もうとしていUIWebView
ます。必要なアウトレットを追加し、loadrequestを使用してURLをロードしloadHtmlString
、単純なテキスト行をフォーマットしてテストしました。これは正常に機能します。以下のコードを使用して、fusionchartがブラウザで正しく機能することをテストしました。
MonoTouchプロジェクトに、Column3d.swf、jquery.min.js、FusionCharts.js、FusionCharts.HC.js、FusionCharts.HC.Charts.jsを含む「charts」という名前のフォルダーがあります。
私の中で
ViewDidLoad
string htmlString = "<html> <head> <script type=\"text/javascript\"src=\"Charts/jquery.min.js\"> </script> <script type=\"text/javascript\" src=\"Charts/FusionCharts.js\"> </script> <script type=\"text/javascript\" src=\"Charts/FusionCharts.HC.js\"> </script> <script type=\"text/javascript\" src=\"Charts/FusionCharts.HC.Charts.js\"> </script> </head> <body> <div id=\"chartContainer\">FusionCharts will load here! </div> <script type=\"text/javascript\"> var myChart = new FusionCharts( \"Charts/Column3D.swf\", \"myChartId\", \"400\", \"300\", \"0\", \"1\" );myChart.setXMLUrl(\"Charts/Data.xml\"); myChart.render(\"chartContainer\"); </script> </body> </html>"; this.webView.LoadHtmlString (htmlString, new NSUrl ("./Charts", true)); /*string htmlString = "<html><head></head><body><span style=\"font-weight: bold;\">This</span> " + "<span style=\"text-decoration: underline;\">is</span> <span style=\"font-style: italic;\">some formatted</span> " +"<span style=\"font-weight: bold;text-decoration: underline;\">text!</span><br></body></html>";*/ //works //this.webView.LoadHtmlString (htmlString, null); //works
Data.xml
<chart caption='Weekly Sales Summary' xAxisName='Week' yAxisName='Amount' numberPrefix='$'> <set label='Week 1' value='14400' /> <set label='Week 2' value='19600' /> <set label='Week 3' value='24000' /> <set label='Week 4' value='15700' /> </chart>
誰かが私がこれを機能させる方法を説明できますか?前もって感謝します。
編集:私も試しました
string htmlString = "<html><head> <title>Creating Pure JavaScript chart</title><script type=\"text/javascript\" src=\"charts/FusionCharts.js\"></script></head> <body><div id=\"chartContainer\">FusionCharts will load here!</div> <script type=\"text/javascript\">FusionCharts.setCurrentRenderer('javascript');var myChart = new FusionCharts( \"charts/Column3D.swf\", \"myChartId\", \"400\", \"300\", \"0\", \"1\" );myChart.setXMLData(\"<chart><set label='Data1' value='1' /></chart>\"); myChart.render(\"chartContainer\"); </script></body> </html>";
ここで、レンダラーにjavascriptを使用させ、文字列のチャートパラメーターを無効に設定します。誰?