iOS 13中的新增功能,三个手势被解释为要求撤消和重做:
用三根手指双击表示撤消。
[用三根手指向左滑动表示撤消。
用三根手指向右快速表示重做。
检测这些手势的手势识别器在哪里?我该怎么做才能覆盖它们,关闭它们或在它们与我自己的手势之间进行仲裁?
它是通过系统统一的,因此,如果您使用UndoManager
(More details)或NSUndoManager
,则它是完全免费的。因此,如果您像使用摇动一样实现它,它也适用于手势。
您可以使用此变量更改其配置:
public protocol UIResponder {
var editingInteractionConfiguration: UIEditingInteractionConfiguration
}
它是一个枚举:
public enum UIEditingInteractionConfiguration {
case `default` // System behavior
case none // Disable
}
所以应该是[[disable like:
override var editingInteractionConfiguration: UIEditingInteractionConfiguration { .none }
来源:动作),并且您可以在任何WWDC 2019-Modernizing Your Audio App 37:00
注意 iOS 13中还有更多手势,例如,捏3根手指[[in将复制所选文本并将其捏住out将其粘贴。所有这些都与该协议一起连接到旧式动作(例如经典shake
responder
中覆盖它。