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相机拍照及选取本地相册并渲染相关推荐

  1. Android开发 :调用系统相机拍照保存照片并显示在当前界面

    主要思路:调用照相机拍照,然后为拍得的照片在SD卡新开一个储存照片的文件,然后在onActivityResult中进行照片显示 1.因为要调用照相机和SD卡所以需要在manifest.xml中添加以下 ...

  2. Android Q:调用系统相机拍照,并且获取图片

    获取图片后上传可以看我这篇文章,封装好了后,只需要一个uri就行了 https://blog.csdn.net/qq_27454233/article/details/106661130 先说明And ...

  3. android 相机拍照返回,Android6.0机型上调用系统相机拍照返回的resultCode值始终等于0的问题...

    版权声明:本文为博主原创文章,未经博主允许不得转载. 正常情况下调用系统相机拍照: 如果拍照后点击的是"确定"图标,返回的resultCode = -1(Activity.RESU ...

  4. 【Android 开发】SufaceView自定义相机拍照

    前段时间写了关于一篇关于调用系统相机的博客,如果需要调用系统相机和截图可以看一看这篇博客:Android学习之调用系统相机拍照.截图并保存最近发现不同手机,调用系统相机效果不太好,,所以学习Andro ...

  5. Android7.0调用系统相机拍照、访问相册问题。

    关于Android7.0调用系统相机拍照.访问相册的一些问题: 在Android6.0中Google提出了动态申请权限的Api,调用相机拍照,访问SDcard等操作都需要先申请对应的权限如下: < ...

  6. android 调用系统相机拍照 获取原图

    博客源址:android 调用系统相机拍照 获取原图 博客时间:2013-04-23 11:08 好吧,为了这个问题又折腾了一整天.之前在网上找来的方法,如果在onActivityResult中直接用 ...

  7. Android多层嵌套Fragment中调用系统相机拍照以及裁剪的相关问题解决

    多层嵌套Fragment中调用系统相机拍照.裁剪 最近公司项目有频繁使用相机拍照的需求,然后频繁的实际使用过程中遇到很多大大小小的坑,在此记录下. (ps.关于一些拍照后图片旋转.裁剪设置返回数据为t ...

  8. android代码调用相机,Android如何调用系统相机拍照

    本文实例为大家分享了Android调用系统相机拍照的具体代码,供大家参考,具体内容如下 /** * 调用系统相机 */ private void takePhoto() { Uri uri = nul ...

  9. Android调用系统相机拍照并保存到指定位置

    Android调用系统相机拍照并保存到指定位置 @Click(R.id.btn_takePhoto)void onclick() {Intent intent = new Intent(MediaSt ...

最新文章

  1. ASP.NET的用户控件
  2. java游戏小程序_javaCode 158个经典小程序,里面包含各种小游戏代码,能提高初学者 趣,同事可以从中学习 Games 246万源代码下载- www.pudn.com...
  3. Linux 等待进程结束 wait() 和 waitpid()
  4. 前端学习(2527):功能展示
  5. JavaScript正则表达式补充
  6. PCL中的ICP算法(Registration模块之IterativeClosestPoint点云配准)
  7. memcache源码编译安装
  8. 深入浅出Mysql 读书笔记
  9. 生成对抗网络,从DCGAN到StyleGAN、pixel2pixel,人脸生成和图像翻译。
  10. win8 怎么桌面计算机图标不见了,win8系统桌面图标不见了怎么办?如何恢复
  11. IndentationError: unindent does not match any outer indentation level
  12. MATLAB矩阵基础知识(二)
  13. 翻出过去的一个多彩泡泡屏保特效(JS+CSS版)
  14. 【亲测】80个经典在线休闲H5小游戏源码合集,直接上传空间即可使用,可玩性还不错
  15. 如何利用树莓派制作路由器
  16. redis为什么选择了跳跃表而不是红黑树
  17. 强化学习—— 离散与连续动作空间(随机策略梯度与确定策略梯度)
  18. 数据库:数据的独立性
  19. CSS 渐变色 (超好看)
  20. [事件知识图谱] EventKG: A Multilingual Event-Centric Temporal Knowledge Graph

热门文章

  1. **官宣!亿道信息推出首款基于飞腾处理器的加固平板电脑**
  2. Java常见的设计模式整理
  3. Java经典实例代码
  4. iOS如何实时查看App运行日志
  5. 信创电子档案管理系统软件单机版v3.0功能
  6. 将js对象转化为json对象
  7. day10 【迭代器 数据结构】上课
  8. 【Python零基础】19天从零开始学Python——第三天条件语句
  9. 安卓手机在苹果面前再无性价比优势
  10. java getmethod int_带有子类参数的Java getMethod