2010-12-07 30 views
3

En appelant BackButton.override(); puis en vous connectant à l'événement backKeyDown, je suis en mesure d'appuyer sur le bouton de retour pour enregistrer.Comment capturer les pressions de bouton natif (Menu) dans PhoneGap?

Mais il ne semble pas y avoir de MenuButton.override(); En outre, l'accrochage sur le menuKeyDown n'enregistre pas une pression sur un bouton.

Voici mon code (non-fonctionnel). Qu'est-ce que je rate?

<script type="text/javascript" charset="utf-8" src="phonegap.js"></script>  

    <script type="text/javascript" charset="utf-8"> 
     document.addEventListener("deviceready", function() { 

      alert('initialized'); 
    }, false); 
    document.addEventListener("menuKeyDown", function() { 

      alert('menu_pressed'); // Never happens 
    }, false); 
    </script> 

Répondre

2

La dernière version de phongap.js ne prend pas en charge pour cette édition touche Menu remplaçant vous copiez ajoutez le code suivant:

KeyEvent.prototype.menuTrigger = function() 
{ 
    var e = document.createEvent('Events'); 
    e.initEvent('menuKeyDown'); 
    document.dispatchEvent(e); 
} 

Espérons que cela vous aidera.

+0

Merci, ça a bien marché! Je l'ai ajouté dans le rappel deviceready, et déplacé le addEventListener pour le menuKeyDown au callback deviceready juste après. – Dinedal