NSLinkAttribute在不可编辑时取消滚动

时间:2017-06-28 00:06:05

标签: ios swift uiscrollview uitextview

我有以下设置:

UITextView包含一些文字,其中一些是 链接

当我将isEditable值设置为false时,点击那些现在可以操作的链接时,我无法初始化任何滚动。

  

如何制作从链接上开始实际拖动的触摸事件   用户滚动手势时UITextview

1 个答案:

答案 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