UITextViewDelegate 方法在 Swift 3 和 Xcode 8.0 中给出 "Use of undeclared type URL" 错误

UITextViewDelegate method gives "Use of undeclared type URL" error in Swift 3 and Xcode 8.0

当我在 swift class 中实现 func textView(_ textView: UITextView, shouldInteractWith URL: URL, in characterRange: NSRange) -> Boolfunc textView(_ textView: UITextView, shouldInteractWith URL: URL, in characterRange: NSRange, interaction: UITextItemInteraction) -> Bool 方法时,它会给出如下所示的错误和警告。

错误:Use of undeclared type 'URL'

警告:Instance method 'textView(_:shouldInteractWith:in:)' nearly matches optional requirement 'textView(_:shouldInteractWith:in:)' of protocol 'UITextViewDelegate'

如果我将 class 名称更改为 NSURL 而不是 URL,它会正确编译,但警告永远不会消失。

在我的 textView

中与 URL 交互时也不会调用上述方法

谢谢!

尝试将方法头更改为如下内容:

func textView(_ textView: UITextView, shouldInteractWith url: URL, in characterRange: NSRange) -> Bool

(形参url需要小写)

这绝对是 Swift/Xcode 的错误。形式参数 URL 隐藏类型 URL.