全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

ionic中的$ionicPlatform.ready事件中的通用设置

前言

$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事件中的通用设置,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!


# ionic  # platform.ready  # 事件  # 小编  # 事件中  # 在这个  # 给大家  # 所述  # 给我留言  # 再按  # 状态栏  # 有任何  # 就行了  # 只要在  # ionicNativeTransitions  # function  # cordovaToast  # setCommon  # location  # timeout  # navigator  # span  # splashscreen 


相关文章: 子杰智能建站系统|零代码开发与AI生成SEO优化指南  如何在腾讯云服务器上快速搭建个人网站?  婚礼视频制作网站,学习*后期制作的网站有哪些?  网站建设制作、微信公众号,公明人民医院怎么在网上预约?  深圳网站制作案例,网页的相关名词有哪些?  建站之星在线版空间:自助建站+智能模板一键生成方案  XML的“混合内容”是什么 怎么用DTD或XSD定义  江苏网站制作公司有哪些,江苏书法考级官方网站?  建站之星微信建站一键生成小程序+多端营销系统  上海网站制作网页,上海本地的生活网站有哪些?最好包括生活的各个方面的?  南宁网站建设制作定制,南宁网站建设可以定制吗?  如何获取开源自助建站系统免费下载链接?  如何在Mac上搭建Golang开发环境_使用Homebrew安装和管理Go版本  网站视频怎么制作,哪个网站可以免费收看好莱坞经典大片?  手机怎么制作网站教程步骤,手机怎么做自己的网页链接?  ,想在网上投简历,哪几个网站比较好?  如何使用Golang安装API文档生成工具_快速生成接口文档  网站建设设计制作营销公司南阳,如何策划设计和建设网站?  定制建站哪家更专业可靠?推荐榜单揭晓  北京网页设计制作网站有哪些,继续教育自动播放怎么设置?  简历在线制作网站免费版,如何创建个人简历?  沈阳制作网站公司排名,沈阳装饰协会官方网站?  建站之星如何快速更换网站模板?  如何通过智能用户系统一键生成高效建站方案?  如何高效搭建专业期货交易平台网站?  ,如何利用word制作宣传手册?  如何通过FTP空间快速搭建安全高效网站?  专业公司网站制作公司,用什么语言做企业网站比较好?  如何选择美橙互联多站合一建站方案?  c++怎么编写动态链接库dll_c++ __declspec(dllexport)导出与调用【方法】  linux top下的 minerd 木马清除方法  如何快速搭建高效WAP手机网站吸引移动用户?  北京专业网站制作设计师招聘,北京白云观官方网站?  如何快速打造个性化非模板自助建站?  建站主机选虚拟主机还是云服务器更好?  c++23 std::expected怎么用 c++优雅处理函数错误返回【详解】  Swift中switch语句区间和元组模式匹配  宝塔面板创建网站无法访问?如何快速排查修复?  百度网页制作网站有哪些,谁能告诉我百度网站是怎么联系?  合肥制作网站的公司有哪些,合肥聚美网络科技有限公司介绍?  建站之星北京办公室:智能建站系统与小程序生成方案解析  存储型VPS适合搭建中小型网站吗?  家族网站制作贴纸教程视频,用豆子做粘帖画怎么制作?  大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?  黑客入侵网站服务器的常见手法有哪些?  如何选择高效可靠的多用户建站源码资源?  制作网站的基本流程,设计网站的软件是什么?  广州营销型建站服务商推荐:技术优势与SEO优化解析  如何在阿里云高效完成企业建站全流程?  制作网页的网站有哪些,电脑上怎么做网页? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。