我想从应用程序中禁用长触摸。我无法控制在 WebView 上加载的 HTML。
问问题
13566 次
4 回答
53
在webViewDidFinishLoad
委托中,我在加载的 html 页面上运行了一个禁用长触摸的 javascript。
[webView stringByEvaluatingJavaScriptFromString:@"document.body.style.webkitTouchCallout='none'; document.body.style.KhtmlUserSelect='none'"];
于 2011-04-05T07:04:42.070 回答
6
不再支持 UIWebView。因此,您应该实现 WKWebView 并且有一个名为allowedLinkPreview的属性,您可以使用它启用或禁用长触摸预览。
webView.allowsLinkPreview = false
于 2020-02-09T18:08:03.333 回答
1
您可以尝试从视图控制器覆盖以下方法:
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event;
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event;
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event;
这样,您可以用自己的实现替换通常的触摸管理。
于 2011-04-04T13:48:59.320 回答
-6
在 Interface Builder 中打开您的视图,单击 Web 视图,然后在属性检查器中取消选中“启用用户交互”复选框。
如果您想在代码中执行此操作,请将 Web 视图的userInteractionEnabled
属性设置为NO
.
于 2011-04-01T12:57:06.470 回答