繁体   English   中英

UIWebView:当“修饰”在链接之外时取消打开链接?

[英]UIWebView: Cancel opening a link when “touch up” is outside of the link?

我有一个UIWebView,文本中有链接,如果按下则打开Safari。

如果用户触摸链接,它会变暗......但是如果他想取消通过先将手指移开而按下链接,它会保持黑暗,并且在任何地方释放手指都会打开链接。

是否有某种方法可以让用户通过移开他的手指来“取消”他的“点击” - 沿着“内部触摸”按钮的行为?

无法使用公共SDK完全按照您的要求进行操作。
我能想到的最佳答案是跟踪UIWebView本身的触摸开始和触摸结束事件。 然后,添加一个UIWebviewDelegate ,并在此委托的接口中添加一个布尔值bLastTouchDidWander (名称纯粹为例)

触摸向下,将bLastTouchDidWander设置为false。

在触摸屏上,您可以测量触摸移动的距离。 如果它移动超过设定的数量,请将其视为“外部bLasTTouchDidWander ”,并将bLasTTouchDidWander设置为true。

然后,对于webView:shouldStartLoadWithRequest:navigationType: UIWebViewDelegate消息,如果bLastTouchDidWander为true,则不要关注该链接。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM