| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115 |
- import 'package:chewie/chewie.dart';
- import 'package:flutter/cupertino.dart';
- import 'package:flutter/gestures.dart';
- import 'package:flutter/material.dart';
- import 'package:video_player/video_player.dart';
- void main() {
- runApp(
- MaterialApp(
- home: Page1(),
- )
- );
- }
- class Page1 extends StatelessWidget {
- @override
- Widget build(BuildContext context) {
- // TODO: implement build
- return Container(
- color: Colors.white,
- child: GestureDetector(
- onTap: () {
- Navigator.push<void>(context, CupertinoPageRoute(builder: (_) => ChewieDemo()));
- },
- )
- );
- }
- }
- class ChewieDemo extends StatefulWidget {
- ChewieDemo({this.title = 'Chewie Demo'});
- final String title;
- @override
- State<StatefulWidget> createState() {
- return _ChewieDemoState();
- }
- }
- class _ChewieDemoState extends State<ChewieDemo> {
- TargetPlatform _platform;
- VideoPlayerController _videoPlayerController1;
- VideoPlayerController _videoPlayerController2;
- ChewieController _chewieController;
- double aspectRatio=1;
- I2MaterialControls _i2materialControls;
- @override
- void initState() {
- super.initState();
- _i2materialControls = I2MaterialControls(
- enableQuickControl: true,
- );
- _videoPlayerController1 = VideoPlayerController.network(
- 'http://mirror.aarnet.edu.au/pub/TED-talks/911Mothers_2010W-480p.mp4')
- ..initialize().then((_){
- _chewieController = ChewieController(
- videoPlayerController: _videoPlayerController1,
- allowedScreenSleep: false,
- aspectRatio: _videoPlayerController1.value.aspectRatio,
- autoPlay: true,
- looping: true,
- customControls: _i2materialControls,
- );
- setState(() {
- });
- });
- _videoPlayerController2 = VideoPlayerController.network(
- 'https://v-cdn.zjol.com.cn/276985.mp4')
- ..initialize().then((_){
- setState(() {
- });
- });
- }
- @override
- void dispose() {
- _videoPlayerController1.dispose();
- _videoPlayerController2.dispose();
- _chewieController.dispose();
- super.dispose();
- }
- @override
- Widget build(BuildContext context) {
- return MaterialApp(
- title: widget.title,
- theme: ThemeData.light().copyWith(
- platform: _platform ?? Theme.of(context).platform,
- ),
- home: Scaffold(
- // appBar: AppBar(
- // title: Text(widget.title),
- // ),
- body: Column(
- children: <Widget>[
- Stack(
- children: <Widget>[
- Container(
- // constraints: BoxConstraints(maxHeight: 200),
- child: _chewieController == null ? Container() : Chewie(
- controller: _chewieController,
- ),
- color: Colors.black,
- ),
- ],
- )
- ],
- ),
- ),
- );
- }
- }
|