es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Flutter: la orientación de la pantalla permanece en el formato horizontal después de ver un video en pantalla completa en YouTube.

Tengo una aplicación de Flutter que utiliza el paquete youtube_player_flutter en la versión 8.0.0 para reproducir videos de YouTube, y he creado el siguiente widget de reproductor de YouTube:

import 'package:youtube_player_flutter/youtube_player_flutter.dart';

YoutubePlayerBuilder videoPlayer(video) {
  YoutubePlayerController _controller = YoutubePlayerController(
      initialVideoId: video,
      flags: const YoutubePlayerFlags(
          autoPlay: false, controlsVisibleAtStart: true));
  return YoutubePlayerBuilder(
      player: YoutubePlayer(
        controller: _controller,
      ),
      builder: (context, player) {
        return player;
      });
}

Y lo utilizo en una pantalla de esta manera:

videoPlayer(currentDay[0]['link'])

El video funciona correctamente, pero cuando cambio a pantalla completa, la pantalla se muestra en modo horizontal y permanece en ese modo incluso después de girar el dispositivo. ¿Cómo puedo solucionarlo?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Para corregir este problema, puedes agregar el siguiente código a tu árbol de widgets para habilitar el cambio de orientación del dispositivo al cambiar a pantalla completa:

    import 'package:flutter/services.dart';
    
    SystemChrome.setPreferredOrientations([
          DeviceOrientation.portraitUp,
          DeviceOrientation.landscapeLeft,
          DeviceOrientation.landscapeRight,
    ]);
    

    También puedes agregar el código anterior al método initState de tu StatefulWidget para establecer las preferencias de orientación del dispositivo durante el ciclo de vida del widget.

    Además, si deseas restringir el video para que se reproduzca solo en orientación vertical, también puedes deshabilitar por completo la orientación en apaisado agregando este código a tu archivo de manifiesto de Android:

    <activity android:name="com.tunombredepquete.NombreActividad" android:screenorientation="portrait">
    

    Donde “NombreActividad” es el nombre de la actividad que reproduce el video, y “tunombredepquete” es el nombre del paquete de tu aplicación.

Comments are closed.