gpt4 book ai didi

ios - 如何检测 iOS 11 中的 UIWebview 下降?

转载 作者:搜寻专家 更新时间:2023-10-30 22:12:26 25 4
gpt4 key购买 nike

我有一个 UIWebView。我正在尝试实现 ios11 拖放功能。当我将项目从 Safari 拖放到我的 UIWebView 中时,我想知道将调用哪个委托(delegate)方法。有什么建议吗?

最佳答案

UIWebview 的大部分功能都是在一个名为 UIWebBrowserView 的未记录类中实现的。正是该 View 设置了“交互”属性,并且这些交互的委托(delegate)被设置为相同的 UIWebBrowserView。

根据您的需要,有 3 种检测跌落的选项:

1) 您可以在网页 View 的内容中使用 javascript 来检测掉落。这看起来像:

document.addEventListener('drop', function() {
// Drop detected
} ) ;

2) 您可以在 UIWebBrowserView 中禁用拖放交互。这将允许它们向上传播到包含 View 之一,并且您可以在那里添加自己的交互。这看起来像:

webView.scrollView.subviews[0].interactions = @[] ;  

完成后,您可以创建自己的交互并将它们添加到容器 View 中:

 UIDropInteraction *dropInteration = [[UIDropInteraction alloc]initWithDelegate:myController] ;
[webView addInteraction:dropInteration] ;
webView.userInteractionEnabled = YES ;

然后您将在“myController”中实现 UIDropInteractionDelegate 功能

3) 您可以调整 UIWebBrowserView 并将 UIDropInteractionDelegate 方法替换为您自己的方法。

关于ios - 如何检测 iOS 11 中的 UIWebview 下降?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45484559/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com