Skip to content

Commit bca308a

Browse files
committed
image picker
1 parent 49089a2 commit bca308a

File tree

2 files changed

+20
-5
lines changed

2 files changed

+20
-5
lines changed

.flutter-plugins-dependencies

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
{"info":"This is a generated file; do not edit or check into version control.","plugins":{"ios":[{"name":"camera","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/camera-0.5.8+8/","dependencies":[]},{"name":"image_picker","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/image_picker-0.6.7+12/","dependencies":[]},{"name":"path_provider","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/path_provider-1.6.18/","dependencies":[]},{"name":"shared_preferences","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences-0.5.12/","dependencies":[]},{"name":"sqflite","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/sqflite-1.3.1+1/","dependencies":[]},{"name":"url_launcher","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/url_launcher-5.7.2/","dependencies":[]},{"name":"video_player","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/video_player-0.11.0/","dependencies":[]},{"name":"webview_flutter","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/webview_flutter-1.0.1/","dependencies":[]}],"android":[{"name":"camera","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/camera-0.5.8+8/","dependencies":[]},{"name":"flutter_plugin_android_lifecycle","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/flutter_plugin_android_lifecycle-1.0.11/","dependencies":[]},{"name":"image_picker","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/image_picker-0.6.7+12/","dependencies":["flutter_plugin_android_lifecycle"]},{"name":"path_provider","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/path_provider-1.6.18/","dependencies":[]},{"name":"shared_preferences","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences-0.5.12/","dependencies":[]},{"name":"sqflite","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/sqflite-1.3.1+1/","dependencies":[]},{"name":"url_launcher","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/url_launcher-5.7.2/","dependencies":[]},{"name":"video_player","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/video_player-0.11.0/","dependencies":[]},{"name":"webview_flutter","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/webview_flutter-1.0.1/","dependencies":[]}],"macos":[{"name":"path_provider_macos","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/path_provider_macos-0.0.4+4/","dependencies":[]},{"name":"shared_preferences_macos","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences_macos-0.0.1+10/","dependencies":[]},{"name":"sqflite","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/sqflite-1.3.1+1/","dependencies":[]},{"name":"url_launcher_macos","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_macos-0.0.1+8/","dependencies":[]}],"linux":[{"name":"path_provider_linux","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/path_provider_linux-0.0.1+2/","dependencies":[]},{"name":"shared_preferences_linux","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences_linux-0.0.2+2/","dependencies":["path_provider_linux"]},{"name":"url_launcher_linux","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_linux-0.0.1+1/","dependencies":[]}],"windows":[{"name":"path_provider_windows","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/path_provider_windows-0.0.4+1/","dependencies":[]},{"name":"shared_preferences_windows","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences_windows-0.0.1+1/","dependencies":["path_provider_windows"]},{"name":"url_launcher_windows","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_windows-0.0.1+1/","dependencies":[]}],"web":[{"name":"shared_preferences_web","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences_web-0.1.2+7/","dependencies":[]},{"name":"url_launcher_web","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_web-0.1.4+1/","dependencies":[]},{"name":"video_player_web","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/video_player_web-0.1.4/","dependencies":[]}]},"dependencyGraph":[{"name":"camera","dependencies":[]},{"name":"flutter_plugin_android_lifecycle","dependencies":[]},{"name":"image_picker","dependencies":["flutter_plugin_android_lifecycle"]},{"name":"path_provider","dependencies":["path_provider_macos","path_provider_linux","path_provider_windows"]},{"name":"path_provider_linux","dependencies":[]},{"name":"path_provider_macos","dependencies":[]},{"name":"path_provider_windows","dependencies":[]},{"name":"shared_preferences","dependencies":["shared_preferences_linux","shared_preferences_macos","shared_preferences_web","shared_preferences_windows"]},{"name":"shared_preferences_linux","dependencies":["path_provider_linux"]},{"name":"shared_preferences_macos","dependencies":[]},{"name":"shared_preferences_web","dependencies":[]},{"name":"shared_preferences_windows","dependencies":["path_provider_windows"]},{"name":"sqflite","dependencies":[]},{"name":"url_launcher","dependencies":["url_launcher_web","url_launcher_linux","url_launcher_macos","url_launcher_windows"]},{"name":"url_launcher_linux","dependencies":[]},{"name":"url_launcher_macos","dependencies":[]},{"name":"url_launcher_web","dependencies":[]},{"name":"url_launcher_windows","dependencies":[]},{"name":"video_player","dependencies":["video_player_web"]},{"name":"video_player_web","dependencies":[]},{"name":"webview_flutter","dependencies":[]}],"date_created":"2020-10-27 22:03:26.743950","version":"1.22.1"}
1+
{"info":"This is a generated file; do not edit or check into version control.","plugins":{"ios":[{"name":"camera","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/camera-0.5.8+8/","dependencies":[]},{"name":"image_picker","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/image_picker-0.6.7+12/","dependencies":[]},{"name":"path_provider","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/path_provider-1.6.18/","dependencies":[]},{"name":"shared_preferences","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences-0.5.12/","dependencies":[]},{"name":"sqflite","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/sqflite-1.3.1+1/","dependencies":[]},{"name":"url_launcher","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/url_launcher-5.7.2/","dependencies":[]},{"name":"video_player","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/video_player-0.11.0/","dependencies":[]},{"name":"webview_flutter","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/webview_flutter-1.0.1/","dependencies":[]}],"android":[{"name":"camera","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/camera-0.5.8+8/","dependencies":[]},{"name":"flutter_plugin_android_lifecycle","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/flutter_plugin_android_lifecycle-1.0.11/","dependencies":[]},{"name":"image_picker","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/image_picker-0.6.7+12/","dependencies":["flutter_plugin_android_lifecycle"]},{"name":"path_provider","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/path_provider-1.6.18/","dependencies":[]},{"name":"shared_preferences","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences-0.5.12/","dependencies":[]},{"name":"sqflite","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/sqflite-1.3.1+1/","dependencies":[]},{"name":"url_launcher","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/url_launcher-5.7.2/","dependencies":[]},{"name":"video_player","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/video_player-0.11.0/","dependencies":[]},{"name":"webview_flutter","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/webview_flutter-1.0.1/","dependencies":[]}],"macos":[{"name":"path_provider_macos","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/path_provider_macos-0.0.4+4/","dependencies":[]},{"name":"shared_preferences_macos","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences_macos-0.0.1+10/","dependencies":[]},{"name":"sqflite","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/sqflite-1.3.1+1/","dependencies":[]},{"name":"url_launcher_macos","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_macos-0.0.1+8/","dependencies":[]}],"linux":[{"name":"path_provider_linux","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/path_provider_linux-0.0.1+2/","dependencies":[]},{"name":"shared_preferences_linux","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences_linux-0.0.2+2/","dependencies":["path_provider_linux"]},{"name":"url_launcher_linux","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_linux-0.0.1+1/","dependencies":[]}],"windows":[{"name":"path_provider_windows","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/path_provider_windows-0.0.4+1/","dependencies":[]},{"name":"shared_preferences_windows","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences_windows-0.0.1+1/","dependencies":["path_provider_windows"]},{"name":"url_launcher_windows","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_windows-0.0.1+1/","dependencies":[]}],"web":[{"name":"shared_preferences_web","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences_web-0.1.2+7/","dependencies":[]},{"name":"url_launcher_web","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_web-0.1.4+1/","dependencies":[]},{"name":"video_player_web","path":"/Users/jiangkang/Env/googletool/flutter/.pub-cache/hosted/pub.flutter-io.cn/video_player_web-0.1.4/","dependencies":[]}]},"dependencyGraph":[{"name":"camera","dependencies":[]},{"name":"flutter_plugin_android_lifecycle","dependencies":[]},{"name":"image_picker","dependencies":["flutter_plugin_android_lifecycle"]},{"name":"path_provider","dependencies":["path_provider_macos","path_provider_linux","path_provider_windows"]},{"name":"path_provider_linux","dependencies":[]},{"name":"path_provider_macos","dependencies":[]},{"name":"path_provider_windows","dependencies":[]},{"name":"shared_preferences","dependencies":["shared_preferences_linux","shared_preferences_macos","shared_preferences_web","shared_preferences_windows"]},{"name":"shared_preferences_linux","dependencies":["path_provider_linux"]},{"name":"shared_preferences_macos","dependencies":[]},{"name":"shared_preferences_web","dependencies":[]},{"name":"shared_preferences_windows","dependencies":["path_provider_windows"]},{"name":"sqflite","dependencies":[]},{"name":"url_launcher","dependencies":["url_launcher_web","url_launcher_linux","url_launcher_macos","url_launcher_windows"]},{"name":"url_launcher_linux","dependencies":[]},{"name":"url_launcher_macos","dependencies":[]},{"name":"url_launcher_web","dependencies":[]},{"name":"url_launcher_windows","dependencies":[]},{"name":"video_player","dependencies":["video_player_web"]},{"name":"video_player_web","dependencies":[]},{"name":"webview_flutter","dependencies":[]}],"date_created":"2020-10-27 22:36:33.906771","version":"1.22.1"}

lib/component/component_pickers.dart

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import 'dart:io';
22

33
import 'package:flutter/material.dart';
44
import 'package:flutter_system/utils/pickers_utils.dart';
5+
import 'package:video_player/video_player.dart';
56

67
class PickersPage extends StatelessWidget {
78
@override
@@ -21,7 +22,7 @@ class PickersPage extends StatelessWidget {
2122
},
2223
),
2324
ListTile(
24-
leading: Icon(Icons.video_collection),
25+
leading: Icon(Icons.camera),
2526
title: Text("Image Picker From Camera"),
2627
onTap: () async {
2728
final file = await Pickers.pickImageFromCamera();
@@ -33,15 +34,15 @@ class PickersPage extends StatelessWidget {
3334
title: Text("Video Picker From Gallery"),
3435
onTap: () async {
3536
final file = await Pickers.pickVideoFromGallery();
36-
showImageDialog(context, file);
37+
showVideoDialog(context, file);
3738
},
3839
),
3940
ListTile(
40-
leading: Icon(Icons.image),
41+
leading: Icon(Icons.video_collection),
4142
title: Text("Video Picker From Camera"),
4243
onTap: () async {
4344
final file = await Pickers.pickVideoFromCamera();
44-
showImageDialog(context, file);
45+
showVideoDialog(context, file);
4546
},
4647
),
4748
],
@@ -59,4 +60,18 @@ class PickersPage extends StatelessWidget {
5960
child: Image.file(file),
6061
));
6162
}
63+
64+
void showVideoDialog(BuildContext context, File file) async {
65+
final _controller = VideoPlayerController.file(file);
66+
await _controller.initialize();
67+
await _controller.play();
68+
await showDialog<void>(
69+
barrierDismissible: true,
70+
context: context,
71+
builder: (context) => Container(
72+
width: 100,
73+
height: 100,
74+
child: VideoPlayer(_controller),
75+
));
76+
}
6277
}

0 commit comments

Comments
 (0)