我有以下问题,我有一个类似这样的文本视图"通过点击"我同意"按钮,我保证已阅读并同意在线条款和条件"
我想要做的是在部分中添加一个轻触手势识别器,其中包含"在线条款和条件"当用户点击此文本部分时调用方法,如果用户点击文本的任何其他部分,则不会发生任何事情。
我该怎么做? (由于我签署的NDA,我无法发布任何代码):(我希望我仍然可以得到帮助。
提前致谢。
答案 0 :(得分:4)
您可以使用为可插拔文本范围设置标记NSLinkAttributeName
的属性字符串。然后在textView委托工具
optional func textView(_ textView: UITextView, shouldInteractWith URL:URL, in characterRange: NSRange, interaction: UITextItemInteraction) -> Bool
请注意,您的文字字段必须是可选的且不可编辑才能使其生效。
参考:https://developer.apple.com/reference/uikit/uitextviewdelegate/1649337-textview
在iOS 10之前,您可以使用:
optional func textView(_ textView: UITextView, shouldInteractWith URL: URL, in characterRange: NSRange) -> Bool`
参考: https://developer.apple.com/reference/uikit/uitextviewdelegate/1618606-textview
如果您需要同时支持,请在iOS 10之前使用@available
api - put @available(iOS, deprecated: 10.0)
,在iOS 10之前使用@available(iOS 10.0, *)
。这样您就可以避免编译 - 时间错误。