javascript - ionic app 怎么实现返回按钮问题
大家讲道理
大家讲道理 2017-04-11 09:10:44
[JavaScript讨论组]

ionic app 打包apk之后,手机上返回键点击效果是退出,

需要实现效果:1、特定页面双击返回键退出,单击一次会出现“在点击一次退出”提示
2、除上一条以外的页面,点击返回键,返回到上一个页面,路由使用的是ui-router

请问以上两个效果该怎么实现

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全部回复(2)
大家讲道理

搞定了

.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,是就显示双击退出逻辑,不是就返回上一页。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号