【Flutter】Flutter 拍照示例 ( 拍照并获取照片源码示例 | image_picker: ^0.5.2 版本 )
文章目录
- 一、image_picker 使用
- 二、image_picker 使用示例
- 三、相关资源
一、image_picker 使用
在 image_picker 插件主页 有关于该 Flutter 插件如何使用的代码示例 ;
/// 需要导入的相关库
import 'dart:io';import 'package:flutter/material.dart';
import 'package:image_picker/image_picker.dart';void main() => runApp(MyApp());class MyApp extends StatelessWidget {@overrideWidget build(BuildContext context) {return MaterialApp(home: MyHomePage(),);}
}class MyHomePage extends StatefulWidget {@override_MyHomePageState createState() => _MyHomePageState();
}class _MyHomePageState extends State<MyHomePage> {/// 图像文件对象File _image;/// ImagePicker 引擎实例final picker = ImagePicker();Future getImage() async {// 获取图像的核心方法 final pickedFile = await picker.getImage(source: ImageSource.camera);setState(() {if (pickedFile != null) {_image = File(pickedFile.path);} else {print('No image selected.');}});}@overrideWidget build(BuildContext context) {return Scaffold(appBar: AppBar(title: Text('Image Picker Example'),),body: Center(child: _image == null? Text('No image selected.'): Image.file(_image),),floatingActionButton: FloatingActionButton(onPressed: getImage,tooltip: 'Pick Image',child: Icon(Icons.add_a_photo),),);}
}
参考上述示例代码 , 编写自己的相机拍照代码 ;
二、image_picker 使用示例
在 一 章节中的源码示例是针对 image_picker 0.7.2+1 版本的 Flutter 插件给出的 , 这里由于我的 Flutter SDK 版本很低 , 无法使用最新插件 , 使用的是 image_picker: ^0.5.2 版本的插件 , 代码略有不同 ;
旧版本拍照 :
ImagePicker.pickImage(source: ImageSource.camera);
新版本拍照 :
/// ImagePicker 引擎实例final picker = ImagePicker();/// 获取图像的核心方法 final pickedFile = await picker.getImage(source: ImageSource.camera);
代码示例 :
import 'dart:io';import 'package:flutter/material.dart';
import 'package:image_picker/image_picker.dart';void main() {runApp(MyApp());
}class MyApp extends StatelessWidget {// This widget is the root of your application.@overrideWidget build(BuildContext context) {return MaterialApp(title: 'Flutter Demo',theme: ThemeData(primarySwatch: Colors.blue,),home: MyHomePage(title: '拍照示例'),);}
}class MyHomePage extends StatefulWidget {MyHomePage({Key key, this.title}) : super(key: key);final String title;@override_MyHomePageState createState() => _MyHomePageState();
}class _MyHomePageState extends State<MyHomePage> {int _counter = 0;void _incrementCounter() {setState(() {_counter++;});}/// 需要导入 dart:io 库/// import 'dart:io';File _image;/// 获取摄像头图像的方法Future getImage() async {/// 需要导入 image_picker.dart 包/// import 'package:image_picker/image_picker.dart';final pickedFile = await ImagePicker.pickImage(source: ImageSource.camera);setState(() {if (pickedFile != null) {_image = File(pickedFile.path);} else {print('No image selected.');}});}@overrideWidget build(BuildContext context) {return Scaffold(appBar: AppBar(title: Text(widget.title),),body: Center(child: _image == null? Text('No image selected.'): Image.file(_image),),floatingActionButton: FloatingActionButton(onPressed: getImage,tooltip: 'Pick Image',child: Icon(Icons.add_a_photo),),);}
}
运行效果 :
三、相关资源
参考资料 :
- Flutter 官网 : https://flutter.dev/
- Flutter 插件下载地址 : https://pub.dev/packages
- Flutter 开发文档 : https://flutter.cn/docs ( 强烈推荐 )
- 官方 GitHub 地址 : https://github.com/flutter
- Flutter 中文社区 : https://flutter.cn/
- Flutter 实用教程 : https://flutter.cn/docs/cookbook
- Flutter CodeLab : https://codelabs.flutter-io.cn/
- Dart 中文文档 : https://dart.cn/
- Dart 开发者官网 : https://api.dart.dev/
- Flutter 中文网 ( 非官方 , 翻译的很好 ) : https://flutterchina.club/ , http://flutter.axuer.com/docs/
- Flutter 相关问题 : https://flutterchina.club/faq/ ( 入门阶段推荐看一遍 )
博客源码下载 :
GitHub 地址 : https://github.com/han1202012/flutter_photo ( 随博客进度一直更新 , 有可能没有本博客的源码 )
博客源码快照 : https://download.csdn.net/download/han1202012/15792071 ( 本篇博客的源码快照 , 可以找到本博客的源码 )
【Flutter】Flutter 拍照示例 ( 拍照并获取照片源码示例 | image_picker: ^0.5.2 版本 )相关推荐
- 【Flutter】Flutter 拍照示例 ( 拍照并获取照片源码示例 | image_picker 0.7.2+1 | Flutter 最新 SDK 安装 )
文章目录 一.image_picker 使用 二.更新 Flutter SDK 三.image_picker 使用示例 四.相关资源 之前在 [Flutter]Flutter 拍照示例 ( 拍照并获取 ...
- 微信小程序获取二维码接口整理,.Net Core后台获取小程序二维码
2019独角兽企业重金招聘Python工程师标准>>> 一.关于二维码接口说明 参考:https://my.oschina.net/tianma3798/blog/1811307 获 ...
- 【Flutter】Flutter 拍照示例 ( Flutter 插件配置 | Flutter 插件源码示例 | iOS 应用配置 | Android 应用配置 )
文章目录 一.Flutter 插件配置 二.Flutter 插件源码示例 三.iOS 应用配置 四.Android 应用配置 五.相关资源 一.Flutter 插件配置 Flutter 拍照示例中 , ...
- flutter获取Android照片,Flutter调用Android相机拍照及选取本地相册并渲染
import 'package:flutter/material.dart'; //导入拍照插件 import 'package:image_picker/image_picker.dart'; // ...
- flutter创建/导入区块链钱包,获取余额
flutter创建/导入区块链钱包,获取余额 作为区块链行业小白刚接触区块链钱包几天,来开发钱包还是需要付出很多努力的.下面记录一下flutter框架下创建/导入区块链钱包,并获取余额 一.创建钱包: ...
- 第三节 适配Android10的拍照、从相册获取代码,包括完整的权限申请和图片地址获取
专栏目录 第一节 自定义轮播图的制作 第二节 底部导航栏菜单,炫酷菜单动画,背景变暗.按钮焦点获取 第三节 适配Android10的拍照.从相册获取代码,包括完整的权限申请和图片地址获取 第四节 百度 ...
- 简单的 Android 拍照并显示以及获取路径后上传
简单的 Android 拍照并显示以及获取路径后上传 Activity 中的代码,我只贴出重要的事件部分代码 public void doPhoto(View view){destoryBimap() ...
- 海思平台的拍照和拍照后期处理算法的介绍
参考:https://download.csdn.net/download/who_you_are/9806928 拍照方案 拍照的场景中,一般的视频预览和抓拍的分辨率是不一样的,而且拍照的ISP的效 ...
- reactnative 获取定位_react native 获取地理位置的方法示例
react native 官网介绍了这个 api Geolocation 但是这个api只能返回 经纬度 所以要把经纬度 通过逆地理位置转义 http://recode.ditu.aliyun.com ...
最新文章
- javascript设计模式-组合模式
- Keras【Deep Learning With Python】手写数字识别
- 全球及中国自动驾驶行业应用领域及投资前景展望报告2022-2028年版
- java大数据开发是做什么的_Java转型大数据开发教材,技能储备都在这儿!
- 宝塔面板网站一打开cpu百分百_BT宝塔面板打开这个功能网站快到起飞,降低宝塔面板内存和CPU使用率,降低运行负载...
- oenwrt 进不了bios_win7进不了bios原因及解决办法
- openfire 的配置文件
- 苹果关闭iOS 14.1验证通道,阻止 iOS 14.2 降级
- margin和padding的区别和用法
- Java虚拟机面试总结
- 为什么int类型(16位)的下溢下限为-32768而上溢上限却是32767
- Vuex5.0?大菠萝Pinia挺好的~
- 四级语法2——主谓一致+时态语态
- ios浏览器微信支付回调页面_iOS微信支付结果页面返回原程序按钮
- 【MyBatis】多表查询
- 学生党专用计算机,学生党平价笔记本电脑 最适合学生的高性价比电脑推荐
- Python逆向进阶:Web逆向私单
- 终年32岁的传奇数学家,生前寂寂无闻,一个世纪后却让硅谷领袖们集体落泪致敬
- lighttpd隐藏index.php,lighttpd开启rewrite伪静态方法 - 老牛博客
- java后门_整理的比较全的一句话后门代码(方面大家查找后门)