Showing
2 changed files
with
29 additions
and
5 deletions
| 1 | import 'package:fijkplayer/fijkplayer.dart'; | 1 | import 'package:fijkplayer/fijkplayer.dart'; |
| 2 | import 'package:flutter/material.dart'; | 2 | import 'package:flutter/material.dart'; |
| 3 | +import 'package:one_poem/widgets/my_app_bar.dart'; | ||
| 3 | 4 | ||
| 4 | class PoemVideoPlayer extends StatefulWidget { | 5 | class PoemVideoPlayer extends StatefulWidget { |
| 5 | final String url; | 6 | final String url; |
| 7 | + final String? title; | ||
| 6 | 8 | ||
| 7 | const PoemVideoPlayer({ | 9 | const PoemVideoPlayer({ |
| 8 | Key? key, | 10 | Key? key, |
| 9 | required this.url, | 11 | required this.url, |
| 12 | + this.title, | ||
| 10 | }) : super(key: key); | 13 | }) : super(key: key); |
| 11 | 14 | ||
| 12 | @override | 15 | @override |
| ... | @@ -21,13 +24,23 @@ class _PoemVideoPlayerState extends State<PoemVideoPlayer> { | ... | @@ -21,13 +24,23 @@ class _PoemVideoPlayerState extends State<PoemVideoPlayer> { |
| 21 | @override | 24 | @override |
| 22 | void initState() { | 25 | void initState() { |
| 23 | super.initState(); | 26 | super.initState(); |
| 24 | - player.setDataSource(widget.url, autoPlay: true); | 27 | + // player.setDataSource(widget.url, autoPlay: true); |
| 28 | + //TODO 替换真实URL | ||
| 29 | + player.setDataSource("asset:///assets/data/video_01.mp4", autoPlay: true); | ||
| 25 | } | 30 | } |
| 26 | 31 | ||
| 27 | @override | 32 | @override |
| 28 | Widget build(BuildContext context) { | 33 | Widget build(BuildContext context) { |
| 29 | return Scaffold( | 34 | return Scaffold( |
| 30 | - appBar: AppBar(title: const Text("Fijkplayer Example")), | 35 | + appBar: MyAppBar( |
| 36 | + homeMenuHeader: Container( | ||
| 37 | + alignment: Alignment.center, | ||
| 38 | + child: Text( | ||
| 39 | + widget.title ?? "视频播放", | ||
| 40 | + style: const TextStyle(color: Colors.white), | ||
| 41 | + ), | ||
| 42 | + ), | ||
| 43 | + ), | ||
| 31 | body: Container( | 44 | body: Container( |
| 32 | alignment: Alignment.center, | 45 | alignment: Alignment.center, |
| 33 | child: FijkView( | 46 | child: FijkView( | ... | ... |
| 1 | import 'package:flutter/cupertino.dart'; | 1 | import 'package:flutter/cupertino.dart'; |
| 2 | import 'package:flutter/material.dart'; | 2 | import 'package:flutter/material.dart'; |
| 3 | +import 'package:one_poem/poem/poem_router.dart'; | ||
| 4 | +import 'package:one_poem/routers/fluro_navigator.dart'; | ||
| 3 | import 'package:one_poem/timeline/models/friend_entity.dart'; | 5 | import 'package:one_poem/timeline/models/friend_entity.dart'; |
| 4 | 6 | ||
| 5 | import 'package:one_poem/extension/int_extension.dart'; | 7 | import 'package:one_poem/extension/int_extension.dart'; |
| 8 | +import 'package:tapped/tapped.dart'; | ||
| 6 | 9 | ||
| 7 | class FriendCell extends StatefulWidget { | 10 | class FriendCell extends StatefulWidget { |
| 8 | final FriendData model; | 11 | final FriendData model; |
| ... | @@ -101,9 +104,17 @@ class FriendCellState extends State<FriendCell> { | ... | @@ -101,9 +104,17 @@ class FriendCellState extends State<FriendCell> { |
| 101 | SizedBox( | 104 | SizedBox( |
| 102 | height: 5.px, | 105 | height: 5.px, |
| 103 | ), | 106 | ), |
| 104 | - Text( | 107 | + Tapped( |
| 105 | - widget.model.desc, | 108 | + onTap: () { |
| 106 | - style: TextStyle(fontSize: 15.px), | 109 | + NavigatorUtils.push( |
| 110 | + context, | ||
| 111 | + '${PoemRouter.poemVidePlayer}?url=100', | ||
| 112 | + ); | ||
| 113 | + }, | ||
| 114 | + child: Text( | ||
| 115 | + widget.model.desc, | ||
| 116 | + style: TextStyle(fontSize: 15.px), | ||
| 117 | + ), | ||
| 107 | ), | 118 | ), |
| 108 | makePictureCount(widget.model.pics)!, | 119 | makePictureCount(widget.model.pics)!, |
| 109 | ], | 120 | ], | ... | ... |
-
Please register or login to post a comment