QA@IT

【Titanium】WebviewとApp側の連携

2767 PV

いつもお世話になっております。

現在、Titaniumを使用して、アプリ開発を行っているのですが、
Titanium側でtextfieldを作成して、
その値を、Wewbviewで表示しているJSへ値を渡すことは可能でしょうか?

ボタンをクリックするたびに値を取得したいのですが。。。

fireEventなどで、textfieldの値をアラートして確認することは
できているのですが、取得ができません。
どなたかご教授いただけないでしょうか?

回答

返信遅くなりました。
すいません。

ちょっとてこづってましたが、
おかげさまで何とかカタチにすることができました。

ありがとうございます!!

編集 履歴 (0)

// app.js

var win, webView;

win = Ti.UI.createWindow();
webView = Ti.UI.createWebView({
url: '/index.html'
});

win.add(webView);
win.open();

webView.addEventListener('load', function() {
webView.evalJS('setText("HOGEHOGE")');
});

// index.html
<!DOCTYPE html>
<html lang="ja">
<head>
<script type="text/javascript">
function setText(text) {
var field = document.getElementById('field');
field.innerText = text;
}
</script>
</head>
<body>
<h1>demo</h1>
<div id="field"></div>
</body>
</html>

webView の evalJS メソッドで、WebView 側の JavaScript を呼び出すことができます。
これで渡してみてはいかがでしょう?

編集 履歴 (0)
ウォッチ

この質問への回答やコメントをメールでお知らせします。