ionic中对Android返回按钮自定义
首先要有这个插件
然后在app.js中的app.run中
$ionicPlatform.registerBackButtonAction(function (e) { //针对返回按键的代码 e.preventDefault(); return false; },101)
在这里加入我们针对不同界面返回键响应不同事件的代码就可以了。
下面我们假设逻辑是这样的,在APP的登录页,和几个tab页中,双击返回键为退出应用,那么代码应该是这样的
$ionicPlatform.registerBackButtonAction(function (e) { e.preventDefault(); if ($location.path() == '/tab/main'||$location.path() == '/tab/salesbusiness'||$location.path() == '/tab/managemem'||$location.path() == '/tab/goodssearch'||$location.path() == '/tab/factorymanage'||$location.path() == '/login') {//如果界面是几个tab页或登录页 if ($rootScope.backButtonPressedOnceToExit) {//双击返回键 ionic.Platform.exitApp();//退出APP } else { $rootScope.backButtonPressedOnceToExit = true;此时为点击了一次返回键 $cordovaToast.showShortBottom("再次点击返回键退出应用"); //给出再次点击返回键退出APP的提示 $timeout(function () { //设置定时器,若一秒中内没有点击第二次返回键,则判定第一次返回键也没有点击,换言之,要重新双击才能退出APP $rootScope.backButtonPressedOnceToExit = false;//判定没有点击第一下返回键 }, 1000); } }else{ $ionicHistory.goBack();//若不为tab页或登录页,则点击系统返回按钮回到上一界面 } return false; },101)
这样的话,我们就可以在tab页和登录页双击返回键退出app,单击返回键做出提示。在其他界面单击返回键回到上一界面的功能。