I am getting a video url I have stored from my CloudFirestore DB and displaying network videos in a listView.buiilder().
 when I set
when I set 
autiInitialize = true
or try to initialize the video in any other way I get Error
Exception has occurred.
Bad state: Future already completed
and
I/flutter ( 6187): ══╡ EXCEPTION CAUGHT BY FOUNDATION LIBRARY ╞════════════════════════════════════════════════════════
I/flutter ( 6187): The following assertion was thrown while dispatching notifications for VideoPlayerController: 
I/flutter ( 6187): setState() or markNeedsBuild() called during build.
I/flutter ( 6187): This MaterialControls widget cannot be marked as needing to build because the framework is already
I/flutter ( 6187): in the process of building widgets. A widget can be marked as needing to be built during the build
I/flutter ( 6187): phase only if one of its ancestors is currently building. This exception is allowed because the
I/flutter ( 6187): framework builds parent widgets before children, which means a dirty descendant will always be
I/flutter ( 6187): built. Otherwise, the framework might not visit this widget during this build phase.
I/flutter ( 6187): The widget on which setState() or markNeedsBuild() was called was:
I/flutter ( 6187):   MaterialControls(state: _MaterialControlsState#47383)
part of my code
VideoPlayerController  retcontroller(String varainatVideo){
    if(playercontroller == null){
      playercontroller = VideoPlayerController.network(varainatVideo);
    }
    return playercontroller;
  }
   Chewie(
  retcontroller(${snapshotDocuments[index].data['videos']}),
 autoInitialize: true,
cupertinoProgressColors: ChewieProgressColors(),
showControls:false,
 ),
Looks like you're trying to change the state during the UI build, be sure you're not using setState(...) in ListView.builder(...)
Take this as an example.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With