扫码关注官方订阅号
ionic app 打包apk之后,手机上返回键点击效果是退出,
需要实现效果:1、特定页面双击返回键退出,单击一次会出现“在点击一次退出”提示2、除上一条以外的页面,点击返回键,返回到上一个页面,路由使用的是ui-router
请问以上两个效果该怎么实现
光阴似箭催人老,日月如移越少年。
搞定了
.run(['$ionicPlatform', '$rootScope', '$location', '$timeout', '$ionicHistory', '$cordovaToast', '$cordovaKeyboard', function($ionicPlatform, $rootScope, $location, $timeout, $ionicHistory, $cordovaToast, $cordovaKeyboard) { $ionicPlatform.ready(function() { // Hide the accessory bar by default (remove this to show the accessory bar above the keyboard if (window.cordova && window.cordova.plugins && window.cordova.plugins.Keyboard) { cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true); } if (window.StatusBar) { // org.apache.cordova.statusbar required StatusBar.styleLightContent(); } }); //物理返回按钮控制&双击退出应用 $ionicPlatform.registerBackButtonAction(function(e) { //判断处于哪个页面时双击退出 if ($location.path() == '/app/playlists' || $location.path() == '/app/search') { if ($rootScope.backButtonPressedOnceToExit) { ionic.Platform.exitApp(); } else { $rootScope.backButtonPressedOnceToExit = true; $cordovaToast.showShortBottom('再按一次退出系统'); setTimeout(function() { $rootScope.backButtonPressedOnceToExit = false; }, 2000); } } else if ($ionicHistory.backView()) { if ($cordovaKeyboard.isVisible()) { $cordovaKeyboard.close(); } else { $ionicHistory.goBack(); } } else { $rootScope.backButtonPressedOnceToExit = true; $cordovaToast.showShortBottom('再按一次退出系统'); setTimeout(function() { $rootScope.backButtonPressedOnceToExit = false; }, 2000); } e.preventDefault(); return false; }, 101);
在特殊页面加个标记,进入特殊页面后就把标记置成true,然后在run方法中监听返回键。监听方法中判断特殊标记是不是true,是就显示双击退出逻辑,不是就返回上一页。
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
搞定了
在特殊页面加个标记,进入特殊页面后就把标记置成true,然后在run方法中监听返回键。监听方法中判断特殊标记是不是true,是就显示双击退出逻辑,不是就返回上一页。