Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Android VideoView: la vista de vídeo es mucho más oscura en una vista de diálogo

Hola a todos Tengo un problema al incrustar una vista de video dentro de una vista de diálogo

Todo funciona bien, excepto que el video mostrado en el cuadro de diálogo es mucho más oscuro que si se muestra en el resto de la actividad

  • ADVERTENCIA: No se especifica ningún destino, se implementa en el emulador
  • Depurar javascript en android emulador con phonegap
  • Deslizar un diseño desde la parte inferior de la pantalla
  • ¿Cómo puede la aplicación de configuración iniciar la actividad no exportada de una aplicación?
  • Diseño personalizado para DialogFragment OnCreateView vs. OnCreateDialog
  • ¿Puedo usar layout_weight para posicionar un RelativeLayout?
  • algunas ideas ?

    Aquí hay algún código

    button1main.setOnClickListener(new OnClickListener() { public VideoView videoView = null; @Override public void onClick(View v) { //set up dialog Dialog dialog = new Dialog(CustomDialog.this); dialog.setContentView(R.layout.maindialog); //dialog.setTitle("This is my custom dialog box"); dialog.setCancelable(true); this.videoView = (VideoView) dialog.findViewById(R.id.video); VideoPlayer vp = new VideoPlayer(this.videoView, null); vp.playVideo(); //set up button Button button = (Button) dialog.findViewById(R.id.Button01); button.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { finish(); } }); //now that the dialog is set up, it's time to show it dialog.show(); } }); 

  • Cómo crear una ActionBar como Google Play que se desvanece al desplazarse
  • String.format utiliza coma en lugar de punto
  • Camino a capturas de pantalla en Android
  • Android compara la firma del paquete actual con debug.keystore
  • ¿Por qué no se debería escribir una aplicación de Android en C / C ++ porque "simplemente prefieres programar en C / C ++"?
  • No se puede escribir el archivo de caché jarlist mientras se crea el proyecto android
  • 3 Solutions collect form web for “Android VideoView: la vista de vídeo es mucho más oscura en una vista de diálogo”

    Parece que el VideoView se atenúa porque se crea detrás de la ventana. Jason Rogers solución funciona, pero significa que el área detrás del diálogo no se atenúa.

    solía

     mVideoView.setZOrderOnTop(true); 

    Para llevar el VideoView al frente, para que no se atenúe, pero todo lo que está detrás del diálogo lo hará.

    En realidad encontré la solución a esto (o al menos en mi caso)

    Parece que es un error de Android donde se crea la vista de vídeo detrás del cuadro de diálogo y cuando se abre el cuadro de diálogo atenúa las vistas de fondo incluyendo el video

    La "solución rápida" que apliqué es

     WindowManager.LayoutParams a = dialog.getWindow().getAttributes(); a.dimAmount = 0; dialog.getWindow().setAttributes(a); 

    Pueden ser una solución mejor solución como pasar el contexto del cuadro de diálogo en lugar de utilizar el mismo contexto para crear el cuadro de diálogo y la vista de vídeo (comprobaré más tarde si consigo tiempo sone)

    Mientras que el spatialist sugirió las obras, el único problema allí es si usted desea siempre setOrderOnTop a falso después de fijarlo a verdad. Parece una vez que es siempre cierto.

    Recientemente me encontré con el mismo problema (videoview en un diálogo) y la forma en que lo arreglé, a regañadientes, fue borrar FLAG_DIM_BEHIND por lo que el video es "brillante". Conseguí el efecto oscuro apenas haciendo mi diálogo fullscreen y fijando el fondo a un "color dévil" si eso hace cualquier sentido.

    Más información: Con respecto al controlador de medios, no pude encontrar ninguna manera de llevarlo al tope del diálogo. Terminé creando un diseño personalizado de controles de medios y lo coloqué encima de la vista de video. En este contexto, es importante que llamar a setZOrderOnTop impida que coloque el controlador de medios en la parte superior de la vista de vídeo.

    Espero que esto tenga sentido y ayude a alguien.

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.