当你将鼠标连接到Android设备,看到屏幕上的光标,我希望它消失时,它在我的看法.我想为这个视图提供自定义的用户体验,这是从默认的系统光标不同。
kmbjn2e31#
有两种方法可以做到这一点:最简单的方法是使用View.setPointerIcon(),它允许设置自定义指针图标。Android API有一个有用的帮助方法,可以完全不显示光标:PointerIcon.getNullIcon()。所以在Kotlin中将其合并为:
PointerIcon.getNullIcon()
myView.pointerIcon = PointerIcon.getNullIcon()
对于更高级的用例,您可以请求指针捕获(官方Android文档)。简而言之:1.当视图被聚焦时(例如,单击),您可以使用View请求指针捕获。requestPointerCapture1.然后覆盖onCapturedPointerEvent(MotionEvent)或注册OnCapturedPointerListener1.记住在不再需要View时释放捕获。releasePointerCapture请记住,要请求指针捕获**,包含视图的视图层次结构必须具有焦点**。
1条答案
按热度按时间kmbjn2e31#
有两种方法可以做到这一点:
最简单的方法是使用View.setPointerIcon(),它允许设置自定义指针图标。Android API有一个有用的帮助方法,可以完全不显示光标:
PointerIcon.getNullIcon()
。所以在Kotlin中将其合并为:对于更高级的用例,您可以请求指针捕获(官方Android文档)。简而言之:
1.当视图被聚焦时(例如,单击),您可以使用View请求指针捕获。requestPointerCapture
1.然后覆盖onCapturedPointerEvent(MotionEvent)或注册OnCapturedPointerListener
1.记住在不再需要View时释放捕获。releasePointerCapture
请记住,要请求指针捕获**,包含视图的视图层次结构必须具有焦点**。