で新しいウィンドウを作成します
var win = Ti.UI.createWindow({url:'page.js'});
win.listeners = {
'type': function(e){ alert('test'); }
}
win.open();
page.js 内で、指定されたリスナーをウィンドウ内の Ti.UI.WebView に追加します。
for (var type in win.listeners) {
Ti.API.info(win.listeners[type])
webView.addEventListener(type, win.listeners[type]);
}
Ti.API.info(win.listeners['type']) は、関数を「<KrollCallback: 0xb272160>」として出力します。
リスナーがない場合、webView.fireEvent('type') への呼び出しは正常に実行されます。しかし、上記のように webView にリスナーを追加すると、fireEvent の呼び出しで例外がスローされます。
KrollCallback とは何ですか? また、リスナーが存在する場合に fireEvent がクラッシュするのはなぜですか?