【问题标题】:Adding UILongPressGesture to UITableView in iOS13在 iOS 13 中向 UITableView 添加 UI 长按手势
【发布时间】:2019-09-17 19:05:16
【问题描述】:

我已经使用UILongPressGestureUITableView 一年多了,但我发现这在iOS13 中不起作用。

在 iOS13 中,Apple 将此手势添加到 UIScrollView,我不确定将其替换为我自己的是否安全。

<UIScrollViewKnobLongPressGestureRecognizer: 0x7f938c051c00; state = Possible; target= <(action=_handleKnobLongPressGesture:, target= 0x7f938991b000>)>>

有人知道这个问题吗?或知道_handleKnobLongPressGesture 的作用是什么?

【问题讨论】:

    标签: ios swift uilongpressgesturerecogni


    【解决方案1】:

    您没有显示您的代码或解释您的长按手势识别器的用途,但您的代码可能总是错误的。在 iOS 13 中,前面至少有两个长按手势识别器:

    • 长按召唤 UIMenu

    • 长按开始拖动(拖放)

    您似乎不太可能添加一个长按手势识别器并设法协商运行时自己对长按应该意味着什么的期望的需求。你可能最好修改你的手势以消除所有冲突的可能性。

    【讨论】:

    • 谢谢。我不知道我可以在视图中添加 2 种手势。因为我不断地添加/删除手势,所以我没有添加手势以防万一已经有 longPressGestureRecognizer。我刚添加的时候就可以了。
    【解决方案2】:

    不确定该手势识别器的用途,它可能与拖动滚动指示器的新手势有关,但这只是猜测。

    您可以尝试做的一件事是将自己设置为手势的删除,然后实现以下委托方法以始终返回 true

    gestureRecognizer(_:shouldRecognizeSimultaneouslyWith:)
    

    【讨论】:

      猜你喜欢
      • 2020-01-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-18
      • 2014-06-09
      • 2014-05-07
      • 2019-05-13
      相关资源
      最近更新 更多