flutter获取Android照片,Flutter调用Android相机拍照及选取本地相册并渲染
import 'package:flutter/material.dart';
//导入拍照插件
import 'package:image_picker/image_picker.dart';
//导入文件操作库
import 'dart:io';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
// This widget is the root of your application.
@override
Widget build(BuildContext context) {
//flutter项目必须返回MaterialApp,flutter项目从MaterialApp组件开始
return MaterialApp(
title: 'Flutter Demo',
theme: ThemeData(
primarySwatch: Colors.red,
),
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 {
//用户选择的照片
File _image;
Future choosePic(ImageSource source) async { //参数类型为ImageSource
var image = await ImagePicker.pickImage(source: source);
setState(() {
//将用户照片存储到_image
_image=image;
});
}
@override
Widget build(BuildContext context) {
return Scaffold(
//appBar订制导航条
appBar: renderAppBar(),
body: renderBody(),
floatingActionButton:renderFloatingActionBar(),
);
}
//渲染头部的Appbar
Widget renderAppBar(){
return AppBar(
title:Text(widget.title),
centerTitle: true,
);
}
//渲染页面主体区域
Widget renderBody(){
if(_image==null){
return Center(child:Text("请选择照片!"),) ;
}
return Image.file(_image,fit: BoxFit.cover,width: double.infinity,height: double.infinity,);
}
//渲染底部浮动按钮
Widget renderFloatingActionBar(){
return ButtonBar(
//设置对齐方式
alignment: MainAxisAlignment.spaceAround,
children: [
//第一个浮动按钮
FloatingActionButton(
onPressed: (){
choosePic(ImageSource.camera);
},
tooltip: 'photo_camera',
child: Icon(Icons.photo_camera), //相机拍照
),
//第二个浮动按钮
FloatingActionButton(
onPressed: (){
choosePic(ImageSource.gallery);
},
tooltip: 'photo_libarary',
child: Icon(Icons.photo_library), //选择相册照片
)
],
);
}
}
flutter获取Android照片,Flutter调用Android相机拍照及选取本地相册并渲染相关推荐
- Android开发 :调用系统相机拍照保存照片并显示在当前界面
主要思路:调用照相机拍照,然后为拍得的照片在SD卡新开一个储存照片的文件,然后在onActivityResult中进行照片显示 1.因为要调用照相机和SD卡所以需要在manifest.xml中添加以下 ...
- Android Q:调用系统相机拍照,并且获取图片
获取图片后上传可以看我这篇文章,封装好了后,只需要一个uri就行了 https://blog.csdn.net/qq_27454233/article/details/106661130 先说明And ...
- android 相机拍照返回,Android6.0机型上调用系统相机拍照返回的resultCode值始终等于0的问题...
版权声明:本文为博主原创文章,未经博主允许不得转载. 正常情况下调用系统相机拍照: 如果拍照后点击的是"确定"图标,返回的resultCode = -1(Activity.RESU ...
- 【Android 开发】SufaceView自定义相机拍照
前段时间写了关于一篇关于调用系统相机的博客,如果需要调用系统相机和截图可以看一看这篇博客:Android学习之调用系统相机拍照.截图并保存最近发现不同手机,调用系统相机效果不太好,,所以学习Andro ...
- Android7.0调用系统相机拍照、访问相册问题。
关于Android7.0调用系统相机拍照.访问相册的一些问题: 在Android6.0中Google提出了动态申请权限的Api,调用相机拍照,访问SDcard等操作都需要先申请对应的权限如下: < ...
- android 调用系统相机拍照 获取原图
博客源址:android 调用系统相机拍照 获取原图 博客时间:2013-04-23 11:08 好吧,为了这个问题又折腾了一整天.之前在网上找来的方法,如果在onActivityResult中直接用 ...
- Android多层嵌套Fragment中调用系统相机拍照以及裁剪的相关问题解决
多层嵌套Fragment中调用系统相机拍照.裁剪 最近公司项目有频繁使用相机拍照的需求,然后频繁的实际使用过程中遇到很多大大小小的坑,在此记录下. (ps.关于一些拍照后图片旋转.裁剪设置返回数据为t ...
- android代码调用相机,Android如何调用系统相机拍照
本文实例为大家分享了Android调用系统相机拍照的具体代码,供大家参考,具体内容如下 /** * 调用系统相机 */ private void takePhoto() { Uri uri = nul ...
- Android调用系统相机拍照并保存到指定位置
Android调用系统相机拍照并保存到指定位置 @Click(R.id.btn_takePhoto)void onclick() {Intent intent = new Intent(MediaSt ...
最新文章
- ASP.NET的用户控件
- java游戏小程序_javaCode 158个经典小程序,里面包含各种小游戏代码,能提高初学者 趣,同事可以从中学习 Games 246万源代码下载- www.pudn.com...
- Linux 等待进程结束 wait() 和 waitpid()
- 前端学习(2527):功能展示
- JavaScript正则表达式补充
- PCL中的ICP算法(Registration模块之IterativeClosestPoint点云配准)
- memcache源码编译安装
- 深入浅出Mysql 读书笔记
- 生成对抗网络,从DCGAN到StyleGAN、pixel2pixel,人脸生成和图像翻译。
- win8 怎么桌面计算机图标不见了,win8系统桌面图标不见了怎么办?如何恢复
- IndentationError: unindent does not match any outer indentation level
- MATLAB矩阵基础知识(二)
- 翻出过去的一个多彩泡泡屏保特效(JS+CSS版)
- 【亲测】80个经典在线休闲H5小游戏源码合集,直接上传空间即可使用,可玩性还不错
- 如何利用树莓派制作路由器
- redis为什么选择了跳跃表而不是红黑树
- 强化学习—— 离散与连续动作空间(随机策略梯度与确定策略梯度)
- 数据库:数据的独立性
- CSS 渐变色 (超好看)
- [事件知识图谱] EventKG: A Multilingual Event-Centric Temporal Knowledge Graph