wx.showLoading的蒙层 mask: true IOS无效
发布于 6 年前 作者 tangchao 7987 次浏览 来自 问答

wx.showLoading的蒙层  mask: true  IOS无效 还是可以点击页面   安卓有效

为什么这个问题还没有解决

一搜索一大堆这样的提问

4 回复

确实有这个bug,不知道楼主是什么情况,我这里反正已经找到重现的规律了,能够“稳定重现”

重现步骤:

如代码:

function showLoading() {

   wx.showLoading({ // loading

      title:  '',
      mask: true // true 显示遮罩
    })

 }


function showToast() {

    wx.showToast({ // toast
      title:  '',
      mask: false // false 或者 默认 不显示遮罩
      duration: 2000

    })

}



步骤一:调用 showLoading() (正常,mask遮罩有效)

步骤二:调用 showToast() (在 loading 尚未消失的时候,显示一个toast,此时 toast 显示,loading 自动隐藏

步骤三:再次调用 showLoading() (此时就会发现 这个loading 的 mask 遮罩能被穿透,失效了!!)

猜测原因,两个用了同一个 mask 属性,toast 的mask: false 覆盖(干扰)了 loading 的 mask: true。

解决办法:

给 showLoading 和 showToast 都加上mask :true(亲测有效)

IOS  整个页面都可以点击  不只是导航栏

你是指顶部和底部的导航栏挡不住吗?

回到顶部