我正在开发一个支持强制触摸的OSX应用程序。
默认情况下,如果你设置一个NSTextField的行为可编辑,用户可以点击两次或使用强制触摸开始编辑。
我想允许用户只使用强制触摸开始编辑。我该如何处理?
子类NSTextField并覆盖pressureChange(with:)
。然后,检查event.stage
的压力水平(或event.pressure
的准确值)。如果事件。阶段为2
,为力触。
@available(macOS 10.10.3, *)
override func pressureChange(with event: NSEvent) {
if event.stage == 2, !self.isEditable {
self.isEditable = true
self.selectText(self)
}
}