亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

ionic App問題總結(jié)系列之ionic點(diǎn)擊系統(tǒng)返回鍵退出App

 更新時(shí)間:2017年08月19日 19:22:11   作者:前端超人  
本篇文章主要介紹了ionic App問題總結(jié)系列之ionic點(diǎn)擊系統(tǒng)返回鍵退出App,具有一定的參考價(jià)值,有興趣的可以了解一下

在安卓下,如果不處理系統(tǒng)返回鍵的事件,那么每次點(diǎn)擊返回鍵,將頁面將返回到上一個(gè)路由,這種邏輯不符合app的路由邏輯。正確的應(yīng)該是:當(dāng)頁面到了各個(gè)導(dǎo)航頁的首頁時(shí),此時(shí)再按返回鍵應(yīng)該提示是否退出app,用戶點(diǎn)擊確認(rèn)后退出app。

在run()方法中添加下面的方法

$ionicPlatform.registerBackButtonAction(function (e){
    //阻止默認(rèn)的行為
    e.preventDefault();
    // 退出提示框
    function showConfirm() {
     var servicePopup = $ionicPopup.show({
      title: '提示',
      subTitle: '你確定要退出應(yīng)用嗎?',
      scope: $rootScope,
      buttons: [
       {
        text: '取消',
        type: 'button-clear button-assertive',
        onTap: function () {
         return 'cancel';
        }
       },
       {
        text: '確認(rèn)',
        type: 'button-clear button-assertive border-left',
        onTap: function (e) {
         return 'active';
        }
       },
      ]
     });
     servicePopup.then(function (res) {
      if (res == 'active') {
       // 退出app
       ionic.Platform.exitApp();
      }
     });
    }
     // 判斷當(dāng)前路由是否為各個(gè)導(dǎo)航欄的首頁,是的話則顯示提示框
    if ($location.path() == '/index' || $location.path() == '/product' || $location.path() == '/account' || $location.path() == '/more') {
     showConfirm();
    } else if ($ionicHistory.backView()) {
     $ionicHistory.goBack();
    } else {
     showConfirm();
    }
    return false;
   }, 101); //101優(yōu)先級(jí)常用于覆蓋‘返回上一個(gè)頁面'的默認(rèn)行為
 

$ionicPlatform.registerBackButtonAction()

該方法是用來注冊(cè)系統(tǒng)返回鍵事件。每次點(diǎn)擊只會(huì)執(zhí)行最高優(yōu)先級(jí)的那個(gè)行為。比如當(dāng)頁面存在一個(gè)modal框的時(shí)候,此時(shí)點(diǎn)擊系統(tǒng)返回鍵則是關(guān)閉modal框,而不是返回上個(gè)視圖。

ionic官方已經(jīng)定義了常用的行為的優(yōu)先級(jí):

  • 返回上個(gè)視圖=100;
  • 關(guān)閉側(cè)欄菜單=150;
  • 關(guān)閉Modal=200;
  • 關(guān)閉 action sheet=300;
  • 關(guān)閉popup=400;
  • 關(guān)閉loading=500;

用法如下:

registerBackButtonAction(callback, priority, [actionId])

所以當(dāng)你要重寫ionic官方定義上面那些行為,你只需要設(shè)置優(yōu)先級(jí)大于那些行為的優(yōu)先級(jí)即可。比如你要覆蓋的是返回上個(gè)視圖的行為,那么你只需要傳入的proirity的值大于100(同時(shí)要小于150)即可。

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論