import 'package:f0ckapp/models/mediaitem_detail.dart'; import 'package:flutter/material.dart'; import 'package:video_player/video_player.dart'; class VideoWidget extends StatefulWidget { final MediaItemDetail details; //const VideoWidget({super.key, required this.details}): super(key: key); const VideoWidget({Key? key, required this.details}) : super(key: key); @override _VideoWidgetState createState() => _VideoWidgetState(); } class _VideoWidgetState extends State { late VideoPlayerController _controller; @override void initState() { super.initState(); _controller = VideoPlayerController.networkUrl( Uri.parse(widget.details.mediaUrl) )..initialize().then((_) { setState(() {}); }); _controller.play(); } @override void dispose() { _controller.dispose(); super.dispose(); } @override Widget build(BuildContext context) { return Scaffold( backgroundColor: Colors.white, body: Center( child: _controller.value.isInitialized ? AspectRatio( aspectRatio: _controller.value.aspectRatio, child: VideoPlayer(_controller), ) : Center( child: CircularProgressIndicator(), ), ), ); } }