1
我正在開發具有Force觸摸支持的OSX應用程序。NSTextField - 僅允許使用強制觸摸進行編輯,Cocoa
默認情況下,如果您將NSTextField的行爲設置爲可編輯,用戶可以點擊兩次或使用強制觸摸開始編輯。
我想讓用戶只能用Force touch開始編輯。我該如何處理?
我正在開發具有Force觸摸支持的OSX應用程序。NSTextField - 僅允許使用強制觸摸進行編輯,Cocoa
默認情況下,如果您將NSTextField的行爲設置爲可編輯,用戶可以點擊兩次或使用強制觸摸開始編輯。
我想讓用戶只能用Force touch開始編輯。我該如何處理?
NSTextField的子類並覆蓋pressureChange(with:)
。 然後,檢查event.stage
的壓力水平(或準確值爲event.pressure
)。如果event.stage是2
,那就是力量感。
@available(macOS 10.10.3, *)
override func pressureChange(with event: NSEvent) {
if event.stage == 2, !self.isEditable {
self.isEditable = true
self.selectText(self)
}
}