我正在寻找一种方法,可以在[NSResponder scrollWheel:]中可靠地区分用户输入设备是一维滚轮还是二维触控板/魔术鼠标?
首先,我想实现一个不同的行为。但仅仅看一眼NSEvent的deltaX就有点弱了。有什么建议吗?
发布于 2011-04-25 17:47:53
您可以使用私有方法调用[theEvent _scrollPhase]来判断设备是否正在使用惯性滚动,这表明是苹果提供的输入设备。(注意:如果用户禁用了惯性滚动,这将不起作用)
发布于 2014-06-10 08:19:01
使用事件的子类型:
enum {
NSMouseEventSubtype = NX_SUBTYPE_DEFAULT,
NSTabletPointEventSubtype = NX_SUBTYPE_TABLET_POINT,
NSTabletProximityEventSubtype = NX_SUBTYPE_TABLET_PROXIMITY
NSTouchEventSubtype = NX_SUBTYPE_MOUSE_TOUCH
};即使在禁用惯性滚动的情况下,这也会起作用。
https://stackoverflow.com/questions/5217680
复制相似问题