zoukankan      html  css  js  c++  java
  • uni-app知识点:禁止页面返回及如何实现自定义返回逻辑、实现再次返回退出应用时不退出应用而是在后台运行、uni-app ios滑动时卡顿不流畅问题解决方案

    一、禁止页面返回

      在uni中页面的生命周期有一个 onBackPress ,只要知道这个生命周期怎么使用就可以运用了,只需要在 当前页面 加上 return true,就可以阻止当前页面返回。起初我想当然的以为是return false像阻止默认事件那样,结果一直没有效果。

    onBackPress(options) {
        ...
        return true
    }

      这里有一个自定义返回教程写的不错,可以参考:uni-app自定义返回逻辑教程:https://ask.dcloud.net.cn/article/35120

      还有比如实现连点2次退出应用

    data() {
        return {
            backButtonPress:0,    //连点2次退出应用计时
        }
    },
    
    onBackPress(options) {  
      this.backButtonPress++;
      if (this.backButtonPress > 1) { 
        plus.runtime.quit();
      } else {
        plus.nativeUI.toast('再按一次退出应用');
      } 
      setTimeout(function() {
        this.backButtonPress = 0;
      }, 1000);
      return true;
    },

    二、uni-app实现再次返回退出应用时不退出应用而是在后台运行

      如果APP需要后台驻留,用户返回到首页时会提示退出操作,我们可以不退出而是隐藏至后台,这样的话APP就会在后台运行,以下代码须写在main.js里面,弹出的内容可自定义设置。

    let main = plus.android.runtimeMainActivity();
    //为了防止快速点按返回键导致程序退出,所以重写quit方法改为隐藏至后台  
    plus.runtime.quit = function() {
        main.moveTaskToBack(false);
    };
    //重写toast方法如果内容为 ‘再次返回退出应用’ 就隐藏应用,其他正常toast 
    plus.nativeUI.toast = (function(str) {
        if (str =='再次返回退出应用') {
            plus.runtime.quit();
        } else {
            uni.showToast({
                title: '再次返回退出应用',
                icon: 'none'
            })
        }
    });

    三、uni-app ios滑动时卡顿不流畅问题解决方案

    1、将scroll-view 改为view使用overflow属性。

    2、将整个vue页面添加position:fixed;z-index:10;脱离页面的ios自带的滚动。

    3、将单独需要滚动的地方设置position:fiexd;z-index:10;

  • 相关阅读:
    UVA1349 Optimal Bus Route Design 最优巴士路线设计
    POJ3565 Ants 蚂蚁(NEERC 2008)
    UVA1663 Purifying Machine 净化器
    UVa11996 Jewel Magic 魔法珠宝
    NEERC2003 Jurassic Remains 侏罗纪
    UVA11895 Honorary Tickets
    gdb调试coredump(使用篇)
    使用 MegaCLI 检测磁盘状态并更换磁盘
    员工直接坦诚直来直去 真性情
    山东浪潮超越3B4000申泰RM5120-L
  • 原文地址:https://www.cnblogs.com/goloving/p/14429127.html
Copyright © 2011-2022 走看看