enterFullScreen method

Future<void> enterFullScreen(
  1. int currentPosition
)

播放器切换全屏

Implementation

Future<void> enterFullScreen(int currentPosition) async {
  final data = _playController._widgetData;
  if (data == null) return;
  data.startTime = currentPosition;

  // 进入全屏播放器
  AliPlayerWidgetData result = await Navigator.of(context).push(
    PageRouteBuilder(
      transitionDuration: const Duration(milliseconds: 100), // 动画持续时间
      pageBuilder: (context, animation, secondaryAnimation) {
        return AliPlayerFullScreenWidget(_playController, data);
      },
      transitionsBuilder: (context, animation, secondaryAnimation, child) {
        // 淡入淡出动画
        return FadeTransition(
          opacity: animation,
          child: child,
        );
      },
    ),
  );
  int fullScreenPosition = await result.startTime ?? 0;
  await _playController._aliPlayer
      .seekTo(fullScreenPosition, result.seekMode);
  _playController.play();
}