Me gustaría poder crear una actividad que siempre esté en la parte delantera de la pantalla de Android. No debe recibir ninguna entrada, solo pásalo a la aplicación que esté debajo de él. Algo así como un HUD.Cómo crear una actividad de superposición de pantalla completa siempre superior en Android
Pude investigar que necesito establecer el tipo de ventana subyacente a TYPE_SYSTEM_ALERT pero parece que Android está ignorando mi código, sin excepción, incluso si elimino el permiso android.permission.SYSTEM_ALERT_WINDOW del manifiesto. (se requiere usar este tipo de ventana). Cuando traté de usar el tipo ALERT en el diálogo, funcionó bien, pero no puedo convertir el diálogo en una entidad transparente de pantalla completa. Aquí está mi código, tal vez falte algo simple.
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);
getWindow().setBackgroundDrawableResource(android.R.color.transparent);
getWindow().setFormat(PixelFormat.TRANSLUCENT);
setContentView(R.layout.main);
}
entorno translúcido tiene que ser activado externamente en el manifiesto XML, de lo contrario también no funcionaba.
<item name="android:windowIsTranslucent">true</item>
¿Cómo terminó su método onCreate? Estoy tratando de probar esto yo mismo ahora. – Rell3oT
ViewGroup mTopView = (ViewGroup) App.inflater.inflate (R.layout.main, null); @tmouse ¿Qué es la aplicación aquí? – rana
@tmouse ¿Qué es R.layout.main? ¿es el diseño de la actividad? o una vista de relleno transparente? – Premier