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) -> Bool
或 func 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
.
当我在 swift class 中实现 func textView(_ textView: UITextView, shouldInteractWith URL: URL, in characterRange: NSRange) -> Bool
或 func 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
.