VideoView class

A widget that displays a native video player using the VideoLoaderFlutter class.

This widget uses native VideoLoaderFlutter (Android/iOS) to render videos with hardware acceleration and native controls.

Example:

VideoView(
  videoUrl: 'https://example.com/video.mp4',
  width: 300,
  height: 200,
  autoPlay: true,
  looping: true,
)
Inheritance

Constructors

VideoView({Key? key, required String videoUrl, double? width, double? height, BoxFit? fit = BoxFit.contain, bool autoPlay = false, bool looping = false, bool showControls = true, VideoErrorCallback? onError, VoidCallback? onPlay, VoidCallback? onPause, VoidCallback? onMute, VoidCallback? onUnmute, VisibilityCallback? onVisibilityChanged, VoidCallback? on50PercentVisible, QuartileCallback? onQuartile, EdgeInsetsGeometry? padding, EdgeInsetsGeometry? margin, BoxDecoration? decoration, BorderRadiusGeometry? borderRadius})
const

Properties

autoPlay → bool
Whether to auto-play the video when loaded (default: false)
final
borderRadius → BorderRadiusGeometry?
Border radius for the video container
final
decoration → BoxDecoration?
Decoration for the video container
final
fit → BoxFit?
Fit mode for the video (kept for API compatibility, not used in native implementation)
final
hashCode → int
The hash code for this object.
no setterinherited
height → double?
Height of the video player (optional, defaults to double.infinity)
final
key → Key?
Controls how one widget replaces another widget in the tree.
finalinherited
looping → bool
Whether to loop the video (default: false) - currently always loops in native implementation
final
margin → EdgeInsetsGeometry?
Margin around the video player
final
on50PercentVisible → VoidCallback?
Callback when video reaches 50% visibility
final
onError → VideoErrorCallback?
Callback when an error occurs
final
onMute → VoidCallback?
Callback when video is muted
final
onPause → VoidCallback?
Callback when video is paused
final
onPlay → VoidCallback?
Callback when video starts playing
final
onQuartile → QuartileCallback?
Callback when video reaches quartiles (25, 50, 75, 100)
final
onUnmute → VoidCallback?
Callback when video is unmuted
final
onVisibilityChanged → VisibilityCallback?
Callback when visibility changes (percentage 0-100)
final
padding → EdgeInsetsGeometry?
Padding around the video player
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
showControls → bool
Whether to show controls (default: true) - kept for API compatibility
final
videoUrl → String
The URL of the video to play
final
width → double?
Width of the video player (optional, defaults to double.infinity)
final

Methods

createElement() → StatefulElement
Creates a StatefulElement to manage this widget's location in the tree.
inherited
createState() → State<VideoView>
Creates the mutable state for this widget at a given location in the tree.
override
debugDescribeChildren() → List<DiagnosticsNode>
Returns a list of DiagnosticsNode objects describing this node's children.
inherited
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
Add additional properties associated with the node.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) → DiagnosticsNode
Returns a debug representation of the object that is used by debugging tools and by DiagnosticsNode.toStringDeep.
inherited
toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) → String
A string representation of this object.
inherited
toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug, int wrapWidth = 65}) → String
Returns a string representation of this node and its descendants.
inherited
toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) → String
Returns a one-line detailed description of the object.
inherited
toStringShort() → String
A short, textual description of this widget.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited