youtube_video_webview 1.0.3
youtube_video_webview: ^1.0.3 copied to clipboard
A customizable YouTube video player for Flutter, supporting embedded playback, fullscreen mode, sharing, captions, and seamless redirection to YouTube inside a webview.
import 'package:flutter/material.dart';
import 'package:youtube_video_webview/youtube_video_webview.dart';
class Simple extends StatelessWidget {
const Simple({super.key});
@override
Widget build(BuildContext context) {
return YoutubeVideoWebview(
videoId: '<ENTER_VIDEO_ID>',
referrerHeader: '<ENTER_REFERRER_URL>',
);
}
}
class DragToDismiss extends StatelessWidget {
const DragToDismiss({super.key});
@override
Widget build(BuildContext context) {
return YoutubeVideoWebview(
videoId: '<ENTER_VIDEO_ID>',
referrerHeader: '<ENTER_REFERRER_URL>',
externalBrowserSettings: YoutubePageWebViewSettings(
dragToDismiss: true
),
);
}
}
class DefaultAppBar extends StatelessWidget {
const DefaultAppBar({super.key});
@override
Widget build(BuildContext context) {
return YoutubeVideoWebview(
videoId: '<ENTER_VIDEO_ID>',
referrerHeader: '<ENTER_REFERRER_URL>',
externalBrowserSettings: YoutubePageWebViewSettings(
appBar: YoutubeVideoWebviewAppBarDefault(),
),
);
}
}
class ShareAppBar extends StatelessWidget {
const ShareAppBar({super.key});
@override
Widget build(BuildContext context) {
return YoutubeVideoWebview(
videoId: '<ENTER_VIDEO_ID>',
referrerHeader: '<ENTER_REFERRER_URL>',
externalBrowserSettings: YoutubePageWebViewSettings(
appBar: YoutubeVideoWebviewAppBarShare(
videoId: '<ENTER_VIDEO_ID>',
shareText: "Check out this video!",
),
),
);
}
}
class CustomAppBar extends StatelessWidget {
const CustomAppBar({super.key});
@override
Widget build(BuildContext context) {
return YoutubeVideoWebview(
videoId: '<ENTER_VIDEO_ID>',
referrerHeader: '<ENTER_REFERRER_URL>',
externalBrowserSettings: YoutubePageWebViewSettings(
appBar: YoutubeVideoWebviewAppBarCustom(
appBar: AppBar(
title: const Text('Custom App Bar'),
backgroundColor: Colors.green,
),
),
),
);
}
}