我有以下设置:
UITextView
包含一些文字,其中一些是 链接 。
当我将isEditable
值设置为false
时,点击那些现在可以操作的链接时,我无法初始化任何滚动。
如何制作从链接上开始实际拖动的触摸事件 用户滚动手势时
UITextview
。
答案 0 :(得分:0)
要克服这个困难,步骤如下:
假设您有一个继承自UIScrollView
的类
RichTextView : UITextView
(由UITextView
继承自UIScrollView
),然后您拥有属性panGestureRecognizer
。此属性包含指定的滚动手势识别器。
下一步是创建一个委托来分配给这个手势识别器,让我们编写所需的代码:
extension RichTextView : UIGestureRecognizerDelegate {
func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWith otherGestureRecognizer: UIGestureRecognizer) -> Bool {
return true
}
}
所以在你的init()或需要时只需写:
panGestureRecognizer.delegate = self
为什么会这样?
子识别器,在这种情况下,为使链接可点击而创建的子识别器正在取消手势。因此需要同时向所有识别器传递手势
有关详细信息,请参阅Apple Docs