原始指针事件
原始指针事件:Pointer Event
Flutter中可以采用Listener来监听原始触摸事件:
1 | Listener({ |
下面代码功能是: 手指在一个容器上移动时查看手指相对于容器的位置
(Listener包含住的空间才触发监听)
1 | class _PointerMoveIndicatorState extends State<PointerMoveIndicator> { |
2、对于上述监听事件,存在忽略指针事件
不想让某个子树响应PointerEvent的话,我们可以使用IgnorePointer和AbsorbPointer,这两个组件都能阻止子树接收指针事件,不同之处在于AbsorbPointer本身会参与命中测试,而IgnorePointer本身不会参与,这就意味着AbsorbPointer本身是可以接收指针事件的(但其子树不行),而IgnorePointer不可以
1 | Listener( |
点击Container时,由于它在AbsorbPointer的子树上,所以不会响应指针事件,所以日志不会输出”in”,但AbsorbPointer本身是可以接收指针事件的,所以会输出”up”。如果将AbsorbPointer换成IgnorePointer,那么两个都不会输出
- Title: 原始指针事件
- Author: 人间烟火/张佳伟版
- Created at: 2024-05-15 13:15:56
- Updated at: 2024-05-22 22:39:06
- Link: https://945912035.github.io/2024/05/15/2024-05-15/
- License: This work is licensed under CC BY-NC-SA 4.0.
Comments