ブラックベリーネイティブからjavascriptまでいくつかのメソッドを呼び出す必要があるアプリを開発しています。
バック キー ダウン イベントをクリックすると、javascript で宣言されているonBackKeyDown()メソッドをトリガーしたいと考えています。
Main.java
protected boolean keyDown(int keycode, int time) {
// TODO Auto-generated method stub
if(Keypad.key(keycode) == Keypad.KEY_ESCAPE)
{
// onBackKeyDown();
// i want to call the following method which is declared in main.js file
Dialog.alert("this is back button");
return true;
}
return super.keyDown(keycode, time);
}
main.js
function onBackKeyDown() {
try {
if ($.mobile.activePage.is("#Page1")) {
$.mobile.changePage("#page5");
} else if ($.mobile.activePage.is("#page2")) {
$.mobile.changePage("#main");
} else if ($.mobile.activePage.is("#page3")) {
$.mobile.changePage("#main");
} else if ($.mobile.activePage.is("#main")) {
navigator.app.exitApp();
}
} catch(e) {
alert("Exception:ConsoleLog.log:" + e);
}
}
「extendScriptEngine」を使用することで、javascriptで宣言されたメソッドがネイティブで呼び出されるという考えがあるので。しかし、ここで、上記のコードに従ってネイティブであるjavascriptのメソッドを呼び出す方法...誰でもこれで私を助けてくれます...