ionic中的$ionicPlatform.ready事件中的通用设置
程序员文章站
2022-07-05 20:43:03
前言
$ionicplatform.ready事件是用于检测当前的平台是否就绪的事件,相当于基于document的deviceready事件, 在app中一些通用关于设备...
前言
$ionicplatform.ready事件是用于检测当前的平台是否就绪的事件,相当于基于document的deviceready事件, 在app中一些通用关于设备的设置必须在这个事件中处理, 为了代码的可读性,我们把设置功能封装成一个方法, 只要在该事件中调用就行了。
关键代码和说明
.factory('setcommon', [ '$ionicplatform', '$location', '$timeout', '$cordovatoast', '$ionicnativetransitions', function ($ionicplatform, $location, $timeout, $cordovatoast, $ionicnativetransitions) { return function () { // 初始条件声明 var backbuttonpressedoncetoexit = false; // 设置启动页 navigator.splashscreen && navigator.splashscreen.hide && navigator.splashscreen.hide(); // 设置虚拟键盘和状态栏 if (window.cordova && window.cordova.plugins && window.cordova.plugins.keyboard) { cordova.plugins.keyboard.hidekeyboardaccessorybar(true); cordova.plugins.keyboard.disablescroll(true); } if (window.statusbar) { statusbar.styledefault(); // ios overlay , android not ionic.platform.isios() ? statusbar.overlayswebview(true) : statusbar.overlayswebview(false); } // 设置物理硬件后退按钮,只有安卓有效 $ionicplatform.registerbackbuttonaction(function (e) { e.preventdefault(); if (backbuttonpressedoncetoexit) { ionic.platform.exitapp(); } else { /* your-tab-path 如 : /tab/home */ if ($location.path() == "your-tab-path1" || $location.path() == "your-tab-path2") { backbuttonpressedoncetoexit = true; $cordovatoast.showshortbottom('再按一次退出!'); $timeout(function () { backbuttonpressedoncetoexit = false; }, 2000); } } }, 110); // 设置安卓物理硬件的普通后退 $ionicplatform.onhardwarebackbutton(function () { $ionicnativetransitions.goback(); }); }; }]);
以上所述是小编给大家介绍的ionic中的$ionicplatform.ready事件中的通用设置,希望对大家有所帮助
上一篇: 详解AngularJS 模块化