Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/180.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android Phonegap Cordova 2.2.0和;安卓后退按钮_Android_Cordova - Fatal编程技术网

Android Phonegap Cordova 2.2.0和;安卓后退按钮

Android Phonegap Cordova 2.2.0和;安卓后退按钮,android,cordova,Android,Cordova,我的phonegap应用程序中的Android后退按钮有问题 每次我按下back键,它都会关闭整个应用程序。下面是我写的代码。我在这里参考了2.2.0的Phonegap API文档: 在JS文件中: function onLoad() { document.addEventListener("deviceready", onDeviceReady, false); } function onDeviceReady() {

我的phonegap应用程序中的Android后退按钮有问题

每次我按下back键,它都会关闭整个应用程序。下面是我写的代码。我在这里参考了2.2.0的Phonegap API文档:

在JS文件中:

function onLoad() {        
   document.addEventListener("deviceready", onDeviceReady, false);    
}   

function onDeviceReady() 
{              
   document.addEventListener("backbutton", onBackKeyDown, false);    
}    

function onBackKeyDown() {      
   alert("back button"); 
}
HTML文件:

<body onload="onLoad()">

除了android的物理后退按钮外,其他所有功能都正常工作。当我按back时,它不会提示我“back button”(返回按钮),但它只是退出整个应用程序

我做错了什么,还是错过了什么

多谢各位

问候,


Amanda

您确定调用了onDeciveryReady()吗?尝试添加console.log(“”);并在logcat中检查你是否真的到达了onDeviceReady

我用你的例子覆盖后退按钮没有问题

确保您的javascript文件导入正确,并且您使用的是Android版的cordova.js文件,而不是其他平台。

作为旁注,如果您计划添加某种“退出确认”对话框,则覆盖某些按钮(如“后退”按钮)可能会让用户感到困惑,该对话框应该可以,但不建议将其设置为与通常完全不同的对话框。

执行此操作

function onLoad() {        
   document.addEventListener("deviceready", onDeviceReady, false);    
}   

function onDeviceReady() 
{              
   document.addEventListener("backbutton", function(ev){
        ev.preventDefault();
        ev.stopPropagation(); // ev is event
   }, false);    
}