1

すばらしい RubyMotion フレームワークと ProMotion gem スタックを使用して iOS アプリを構築しています。

PM::WebScreeniPhoneでグラフを表示したい。コンテンツ メソッドで HTML ファイルを参照し、(1) HTML ファイル、(2) カスタム JS メソッド ファイル、(3) JS グラフ ライブラリ (HighCharts)、および (4) リソース フォルダーに jQuery を配置します。これはすべて正常にレンダリングされます。

PM::WebScreen ファイルでグラフのデータ配列を作成できます (外部ソースへの API 呼び出しからデータを取得します)。グラフは、入力された静的データで正常にレンダリングされます。

問題

データ配列をカスタム JS ファイルに渡して、動的データでグラフを描画できるようにしたいと考えています。どうやってやるの?

RubyMotion/ProMotion コードの他の場所でその配列を使用したい場合があるため、JS から ajax 呼び出しを行いたくありません。

データを HTML ファイルに渡すことができれば、jQuery を使用してそこから JS に抽出できると思います。

お知らせ下さい。ありがとう!

4

1 に答える 1

1

You can use the webview method stringByEvaluatingJavaScriptFromString. For example, if you have a JS function included in your html called loadData that take data as an argument, you can do

In your JS:

function loadData(data) {
// do something with your data
   $("#chart").show();
}

In RM:

data = dataFromSource
webView.stringByEvaluatingJavaScriptFromString('loadData(' + data +')')
于 2014-08-02T13:16:20.273 に答える