在Android 4.0+上不使用真正的鼠标显示光标

时间:2012-08-31 08:37:03

标签: android cursor mouse-cursor

连接鼠标时,Android TV上会出现鼠标光标。如何在不使用真正鼠标的情况下让光标显示?

1 个答案:

答案 0 :(得分:1)

由于您提到的是Android 4.0+,您可能指的是系统本机光标。我不知道如何在不使用外接鼠标的情况下触发它,但是你可以做的是绘制一个覆盖光标。叠加层是一种特殊的窗口,可以显示在所有其他窗口之上。通过这样做,并通过添加一个简单的鼠标光标图像,您将获得...鼠标光标,而不使用真正的鼠标。如果这是您所需要的,并且必须实现代码来执行此操作,请记住以下内容:

实施的重要步骤是:

  1. 在AndroidManifest.xml中,指定SYSTEM_ALERT_WINDOW权限
  2. 准备窗口叠加参数:

    WindowManager.LayoutParams params = new WindowManager.LayoutParams( WindowManager.LayoutParams.WRAP_CONTENT, WindowManager.LayoutParams.WRAP_CONTENT, WindowManager.LayoutParams.TYPE_SYSTEM_OVERLAY, WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE | WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE | WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN, PixelFormat.TRANSLUCENT);

  3. 这会使您的光标显示为:enter image description here

    希望这会有所帮助。您还可以在http://www.pocketmagic.net/2012/07/android-overlay-cursor/

    找到完整的示例实施