IOS アプリ内に HTML をロードする必要がありますが、編集可能な HTML にする必要があるため、私のアプローチは次のとおりです。
フォーマットで NSString を作成したので、いくつかの変数に応じて HTML コードで文字列を作成できます。
NSString *googleGraphCode = [NSString stringWithFormat:@""<"html>"<"body>"<"div id=\"%@\">"<"/div>"<"script type=\"%@\ " src=\"%@\"> google.load('visualization', '1.0', {'packages':['corechart']}); google.setOnLoadCallback(drawChart); function drawChart() { var data = new google.visualization.DataTable(); %@ data.addRows([%@]); var options = {'title':'%@', 'width':%i, 'height':%i}; var chart = new google.visualization.PieChart(document.getElementById('%@')); chart.draw(data, options); }"<"/script>"</"/body>"</"/html>" , chartID、javaScriptCall、AJAX_Api、javaScriptCall、列、行、タイトル、幅、高さ、チャートID];
次に、HTMLString を使用して webView をロードしました。
[_graphHostView loadHTMLString:googleGraphCode baseURL:nil];
NSLog でコードを取得すると、次のようになります。
"<"html>"<"body>"<"div id="chart_div">"</"/div>"<"script type="text/javascript" src="https://www.google.com/ jsapi">"<"script type="text/javascript"> google.load('visualization', '1.0', {'packages':['corechart']}); google.setOnLoadCallback(drawChart); function drawChart() { var data = new google.visualization.DataTable(); data.addColumn('string', 'Tipo'); data.addColumn('string', 'CantidadGasto'); data.addRows([['Gastos', 30000], ['Ingresos', 50000]]); var options = {'title':'Su gráfica de balance:', 'width':320, 'height':300}; var chart = new google.visualization.PieChart(document. getElementById('chart_div')); chart.draw(データ、オプション); }"<"/script>"</"/body>"</"/html>
しかし、デバイスの webView には何も表示されません。
注:htmlコードの前に「<」を使用したため、Stackoverflowは質問にそれを表示するため、「<"html> =通常のhtmlの始まり.