ionic中的$ionicPlatform.ready事件中的通用设置
前言
$ionicPlatform.ready事件是用于检测当前的平台是否就绪的事件,相当于基于document的deviceready事件,在app中一些通用关于设备的设置必须在这个事件中处理,为了代码的可读性,我们把设置功能封装成一个方法,只要在该事件中调用就行了。
关键代码和说明
.factory('setCommon',[ '$ionicPlatform', '$location', '$timeout', '$cordovaToast', '$ionicNativeTransitions', function($ionicPlatform,$location,$timeout,$cordovaToast,$ionicNativeTransitions){ returnfunction(){ //初始条件声明 varbackButtonPressedOnceToExit=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(); //IOSoverlay,Androidnot 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事件中的通用设置,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!