-
Notifications
You must be signed in to change notification settings - Fork 7
/
Copy pathvideo.dart
48 lines (42 loc) · 1.23 KB
/
video.dart
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
import 'package:flutter/material.dart';
import 'package:universe/universe.dart';
import 'package:video_player/video_player.dart';
import '../shared.dart';
class VideoOverlayMap extends StatefulWidget {
const VideoOverlayMap({super.key});
@override
State<VideoOverlayMap> createState() => _VideoOverlayMapState();
}
class _VideoOverlayMapState extends State<VideoOverlayMap> {
VideoPlayerController? _videoController;
void _toggleVideo() {
if (_videoController != null && _videoController!.value.isInitialized) {
if (_videoController!.value.isPlaying) {
_videoController?.pause();
} else {
_videoController?.play();
}
}
}
@override
Widget build(BuildContext context) {
return U.MapBox(
type: MapBoxType.Satellite,
accessToken: yourAccessTokenHere,
center: [23.358295, -114.351456],
zoom: 4,
scale: Scale(color: Colors.white),
videos: [
U.VideoOverlay(
'https://www.mapbox.com/bites/00188/patricia_nasa.mp4',
bounds: [
[32, -130],
[13, -100]
],
onReady: (controller) => (_videoController = controller),
onTap: (position, data) => _toggleVideo(),
),
],
);
}
}