我们可以在cordova中识别UIGesture吗(在cordova中显示本地侧菜单的本机手势)

Posted

技术标签:

【中文标题】我们可以在cordova中识别UIGesture吗(在cordova中显示本地侧菜单的本机手势)【英文标题】:Can we recognise UIGesture in cordova (native gesture to reveal native side menu in cordova ) 【发布时间】:2015-05-17 13:17:57 【问题描述】:

我正在开发一个 ios 项目,在该项目中我想在​​ cordova 应用程序中使用本机侧边菜单。有没有办法使用原生滑动手势来显示侧边菜单。

【问题讨论】:

【参考方案1】:

UIWebView 已经在使用UIGestureRecognizers,因此您必须将此代码添加到添加手势识别器的类中

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer 
    return YES

正如 Stefan 所说,使用显示/隐藏本机菜单的 javascript 滑动更容易/更好

或者你可以使用原生的UIScreenEdgePanGestureRecognizer,因为现有的UIWebViewUIGestureRecognizers不会有任何问题

【讨论】:

它对我有用。谢谢.. 选择sidemenu项目后有什么方法可以调用javascript函数吗?? 您可以使用 [self.webView stringByEvaluatingJavaScriptFromString:@"javascript code here"] 从本机类执行 javascript; 贴一些代码,因为我在很多项目中都使用它 stringByEvaluatingJavaScriptFromString: 在我拦截假网址时工作。但是如果我想在不拦截 url 的情况下调用 javascript 函数,它就不起作用 正如我之前告诉你的,分享你正在使用的代码,用它创建一个新的questios。它有效,因为我使用它。您可以直接执行 javascript 代码,甚至可以执行您已经在应用程序中加载的 javascript 函数 javascript【参考方案2】:

UIWebView 不能很好地与手势识别器配合使用,因此在 iOS 端可能很难获得“本机”回调。

不过,您可以detect a swipe in javascript。

cordova 应用在外观或感觉上都很少像原生应用。对于某些应用程序很好,但如果您想要原生,请使用原生!

【讨论】:

以上是关于我们可以在cordova中识别UIGesture吗(在cordova中显示本地侧菜单的本机手势)的主要内容,如果未能解决你的问题,请参考以下文章

如何识别 Cordova 应用程序安全漏洞?

Cordova 安全性:可以修改已部署应用程序的 HTML/JS 文件吗?

如何使用 UIGesture 将 UIImage 添加到应用程序中的大多数视图。

在 UIScrollView 中检测“向上”UIGesture

我可以在 Cordova 中提交 PHP 表单吗?

我可以在 Cordova 中强制使用 webkit 版本吗?