test654
test654
  • 发布:2020-07-10 13:56
  • 更新:2022-09-28 11:19
  • 阅读:6802

uniapp如何监听或者知道ios左滑返回事件?

分类:uni-app
iOS

如题,我总不能去监听页面的点击滑动判断ios用户是否执行了左滑吧

2020-07-10 13:56 负责人:无 分享
已邀请:
1***@qq.com

1***@qq.com

生命周期onUnload

9***@qq.com

9***@qq.com - 奔走鹿

第一步   
plus.webview.currentWebview().setStyle({ popGesture: 'hide' })  

第二步  

plus.webview.currentWebview().addEventListener('popGesture',e=>{  
                            if(e.result){  
                                 // 你要做的操作  
                            }  
                        })
y***@126.com

y***@126.com - 脉多多

解决了吗

琦玉大神

琦玉大神 - 90 后 IT 先森

uniapp 都不回复的吗官方也不回复一下吗,不要太坑吧

神的尾巴

神的尾巴 - 欢迎关注我的微信公众号:神的尾巴

你要说是哪个平台啊,不同的平台解决方案不一致

IOS、小程序(微信、QQ、支付宝、字节)

在App、微信小程序我记得官方是有专门的Api的,你找找

如果是需要全兼容,可以在onShow触发(其他页面操作修改vuex状态,onShow的时候,检查下)

青阳_1900

青阳_1900

  1. iOS左滑关闭事件监听不了,更不可能拦截
  2. pages.json对应页面配置 "popGesture": "none" 可以取消iOS的左滑关闭
  3. onBackPress 生命周期可以监听返回事件并拦截
蜡笔小新人

蜡笔小新人

同样的问题,苹果手机,无法监控左滑关闭事件

青阳_1900

青阳_1900

看这个文档 https://www.html5plus.org/doc/zh_cn/webview.html#plus.webview.WebviewStyles

// 动态改变webview的侧滑返回功能:  
var page = this.$mp.page.$getAppWebview();  
// 关闭侧滑返回功能  
page.setStyle({'popGesture':'none'});  
// 侧滑返回后关闭webview  
page.setStyle({'popGesture':'close'});  
// 侧滑返回后隐藏webview  
page.setStyle({'popGesture':'hide'});  
青阳_1900

青阳_1900

回复 1***@qq.com: 和web view没关系,就算是用nvue 写的一样

  1. 可以直接写到 page.json 配置文件中, 一次新
  2. nvue 每个页面动态控制
{  
  "path": "pages/popup/index",  
  "style": {  
    "app-plus": {  
      "popGesture": "none"  
    }  
  }  
}  
const page = this.$scope.$getAppWebview()  
// 关闭侧滑返回功能    
page.setStyle({'popGesture':'none'});    
// 侧滑返回后关闭webview    
page.setStyle({'popGesture':'close'});    
// 侧滑返回后隐藏webview    
page.setStyle({'popGesture':'hide'});  

该问题目前已经被锁定, 无法添加新回复