最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
當前位置: 首頁 - 科技 - 知識百科 - 正文

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

來源:懂視網 責編:小采 時間:2020-11-27 22:32:22
文檔

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

ionic App問題總結系列之ionic點擊系統(tǒng)返回鍵退出App:在安卓下,如果不處理系統(tǒng)返回鍵的事件,那么每次點擊返回鍵,將頁面將返回到上一個路由,這種邏輯不符合app的路由邏輯。正確的應該是:當頁面到了各個導航頁的首頁時,此時再按返回鍵應該提示是否退出app,用戶點擊確認后退出app。 在run()方法中添加下面的
推薦度:
導讀ionic App問題總結系列之ionic點擊系統(tǒng)返回鍵退出App:在安卓下,如果不處理系統(tǒng)返回鍵的事件,那么每次點擊返回鍵,將頁面將返回到上一個路由,這種邏輯不符合app的路由邏輯。正確的應該是:當頁面到了各個導航頁的首頁時,此時再按返回鍵應該提示是否退出app,用戶點擊確認后退出app。 在run()方法中添加下面的

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

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

$ionicPlatform.registerBackButtonAction(function (e){
 //阻止默認的行為
 e.preventDefault();
 // 退出提示框
 function showConfirm() {
 var servicePopup = $ionicPopup.show({
 title: '提示',
 subTitle: '你確定要退出應用嗎?',
 scope: $rootScope,
 buttons: [
 {
 text: '取消',
 type: 'button-clear button-assertive',
 onTap: function () {
  return 'cancel';
 }
 },
 {
 text: '確認',
 type: 'button-clear button-assertive border-left',
 onTap: function (e) {
  return 'active';
 }
 },
 ]
 });
 servicePopup.then(function (res) {
 if (res == 'active') {
 // 退出app
 ionic.Platform.exitApp();
 }
 });
 }
 // 判斷當前路由是否為各個導航欄的首頁,是的話則顯示提示框
 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)先級常用于覆蓋‘返回上一個頁面'的默認行為
 

$ionicPlatform.registerBackButtonAction()

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

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

  • 返回上個視圖=100;
  • 關閉側欄菜單=150;
  • 關閉Modal=200;
  • 關閉 action sheet=300;
  • 關閉popup=400;
  • 關閉loading=500;
  • 用法如下:

    registerBackButtonAction(callback, priority, [actionId])

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

    聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

    文檔

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

    ionic App問題總結系列之ionic點擊系統(tǒng)返回鍵退出App:在安卓下,如果不處理系統(tǒng)返回鍵的事件,那么每次點擊返回鍵,將頁面將返回到上一個路由,這種邏輯不符合app的路由邏輯。正確的應該是:當頁面到了各個導航頁的首頁時,此時再按返回鍵應該提示是否退出app,用戶點擊確認后退出app。 在run()方法中添加下面的
    推薦度:
    • 熱門焦點

    最新推薦

    猜你喜歡

    熱門推薦

    專題
    Top