Superposición de vista de aplicación de Android (HUD)
Quiero superponer una vista de toda mi aplicación, todas las actividades incluidas. Piense en ello como un HUD (Head Up Display) sobre mi aplicación. La aplicación tiene varias actividades, incluida una actividad de pestañas y el HUD no interactúa con el usuario de ninguna manera, sólo muestra información al tiempo que permite al usuario interactuar con la aplicación como lo haría normalmente. Quiero este HUD para fines de depuración para que yo (y otros) puedan controlar la actividad de la aplicación y el estado cuando el teléfono no está conectado a una máquina de depuración (pruebas de campo).
¿Cómo agrego una vista de este tipo?
- Cómo obtener la entrada de searchview a textview
- ¿Cómo manejar hacer clic en las vistas secundarias y tocar en los ViewGroups de los padres?
- Android: establece las pestañas predeterminadas pero sin ningún contenido
- GetLocationOnScreen () vs getLocationInWindow ()
- ¿Por qué obtengo un error al intentar establecer el contenido de un tabspec en android?
He intentado usar WindowManager.addView () así:
WindowManager.LayoutParams lp = new WindowManager.LayoutParams( LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT, WindowManager.LayoutParams.TYPE_APPLICATION, WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE | WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE, PixelFormat.TRANSLUCENT); windowManager.addView(hudView, lp);
Pero el HUD no parece persistir en primer plano cuando lanzo nuevas actividades simplemente desaparece.
- Menús dinámicos en NavigationView
- Cómo configurar SearchView TextSize?
- Cambiar vista en el flujo de portada - Android
- Android: mapa de bits de una vista de gran tamaño
- ¿Qué es AttributeSet y cómo puedo usarlo?
- Ver paginador androide con imagen de fondo único
- Tamaño del artículo de menú personalizado y tamaño de texto en la vista de navegación
- Vista personalizada - ¿Cómo configuro sus ID para que se puedan encontrar a través de findViewById ()?
Sé que esta es una vieja pregunta, pero pensé que contestaría de todos modos ya que esto me ayudó. Estaba tratando de conseguir un HUD corriendo en un juego openGL y esto funciona perfectamente para eso.
Dado que ya tiene el HUD que muestra con el gestor de ventanas, todo lo que necesita hacer para mantenerlo persistente entre las actividades es llamar a windowManager.addView(hudView, lp);
En el método onResume()
cada actividad. No está seguro de cuáles son las implicaciones de memoria (es decir, es la vista que se desecha cuando el administrador de ventanas lo elimina de la pantalla al cambiar las actividades), pero al menos mantendrá el HUD en toda la aplicación.
Leí que dejó de trabajar con android, pero tal vez para otros lectores:
Se ha perdido el indicador WindowManager.LayoutParams.TYPE_SYSTEM_ALERT,
Lo mejor para implementar como una vista inflada por un servicio. No lo llame en todas las actividades de onResume.
- NPE durante el inicio del eclipse en "Initializing Java Tooling"
- Android toque en el mapa y obtenga coordenadas