android - immersive - setsystemuivisibility
¿Cómo establecer el diálogo para mostrar con pantalla completa? (5)
La forma más fácil que encontré
Dialog dialog=new Dialog(this,android.R.style.Theme_Black_NoTitleBar_Fullscreen);
dialog.setContentView(R.layout.frame_help);
dialog.show();
Tengo un GridView que muestra muchas imágenes y cuando hago clic en cualquier imagen, se muestra la imagen completa en un cuadro de diálogo de pantalla completa
Por favor dime como hacer eso
Gracias.
en base a este enlace , la respuesta correcta (que yo mismo he probado) es:
pon este código en el constructor o el método onCreate()
del diálogo:
getWindow().setLayout(WindowManager.LayoutParams.MATCH_PARENT,
WindowManager.LayoutParams.MATCH_PARENT);
Además, configure el estilo del diálogo para:
<style name="full_screen_dialog">
<item name="android:windowFrame">@null</item>
<item name="android:windowIsFloating">true</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowAnimationStyle">@android:style/Animation.Dialog</item>
<item name="android:windowSoftInputMode">stateUnspecified|adjustPan</item>
</style>
esto podría lograrse a través del constructor, por ejemplo:
public FullScreenDialog(Context context)
{
super(context, R.style.full_screen_dialog);
...
EDITAR: una alternativa a todo lo anterior sería establecer el estilo en android.R.style.Theme y eso es todo.
tratar
Dialog dialog=new Dialog(this,android.R.style.Theme_Black_NoTitleBar_Fullscreen)
EDITAR Hasta el momento en que nos permita versionar nuestras respuestas, esta es una respuesta que funciona para Android 3 y versiones posteriores. No lo rechaces porque no funciona para ti ahora, porque definitivamente funciona con versiones anteriores de Android.
Solo debe agregar una línea a su método onCreateDialog()
:
@Override
protected Dialog onCreateDialog(int id) {
//all other dialog stuff (which dialog to display)
//this line is what you need:
dialog.getWindow().setFlags(LayoutParams.FLAG_FULLSCREEN, LayoutParams.FLAG_FULLSCREEN);
return dialog;
}
dialog = new Dialog(getActivity(),android.R.style.Theme_Translucent_NoTitleBar);
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
dialog.setContentView(R.layout.loading_screen);
Window window = dialog.getWindow();
WindowManager.LayoutParams wlp = window.getAttributes();
wlp.gravity = Gravity.CENTER;
wlp.flags &= ~WindowManager.LayoutParams.FLAG_BLUR_BEHIND;
window.setAttributes(wlp);
dialog.getWindow().setLayout(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT);
dialog.show();
prueba esto.