chewie
chewie copied to clipboard
Once set to CupertinoControls, clicking Full screen will reset to MaterialControls
class VideoPage extends StatefulWidget {
const VideoPage ({super.key});
@override
State<VideoPage > createState() => _VideoPage();
}
class _VideoPageextends State<VideoPage > {
late VideoPlayerController _videoPlayerController;
ChewieController? _chewieController;
@override
void initState() {
super.initState();
initPlayer();
}
@override
void dispose() {
_videoPlayerController.dispose();
_chewieController?.dispose();
super.dispose();
}
Future initPlayer() async {
_videoPlayerController = VideoPlayerController.networkUrl(
Uri.parse('https://assets.mixkit.co/videos/preview/mixkit-spinning-around-the-earth-29351-large.mp4'),
);
await _videoPlayerController.initialize();
initChewie();
setState(() {});
}
initChewie() {
_chewieController = ChewieController(
videoPlayerController: _videoPlayerController,
autoPlay: true,
);
}
@override
Widget build(BuildContext context) {
return Theme(
data: ThemeData(
platform: TargetPlatform.iOS,
),
child: Container(
width: 1.sw,
height: 360.h,
alignment: Alignment.center,
child: _chewieController != null && _chewieController!.videoPlayerController.value.isInitialized
? Chewie(controller: _chewieController!)
: const CustomLoadingWidget(showColor: false),
),
);
}
}
Once set to CupertinoControls, clicking Full screen will revert to MaterialControls
@cbenhagen @diegotori Hello, can you help me?
use like this _chewieController = ChewieController( customControls: const CupertinoControls( backgroundColor: Colors.transparent, iconColor: Colors.white), videoPlayerController: videoPlayerController, autoPlay: false);