app直播系统源码,Flutter拍照与选择照片并且保存到本地

app直播系统源码,Flutter拍照与选择照片并且保存到本地实现的相关代码

核心代码:

 

1
final picker = ImagePicker(); //初始化<br>///存放的图片<br>File _imgPath;<br>Future getImage(bool isTakePhoto) async {<br>  try {<br>    var pickedFile = await picker.getImage(<br>        source: isTakePhoto ? ImageSource.camera : ImageSource.gallery);<br>    if (pickedFile != null) {<br>      setState(() {<br>        _imgPath = File(pickedFile.path);<br>      });<br>    } else {<br>      print('没有选择任何图片');<br>    }<br>  } catch (e) {<br>    print("该手机不支持相机");<br>  }<br>}

​具体代码:

 

1
import 'dart:io';<br>import 'package:flutter/cupertino.dart';<br>import 'package:flutter/material.dart';<br>import 'package:image_picker/image_picker.dart';<br>class ImageTest extends StatefulWidget {<br>  @override<br>  State<StatefulWidget> createState() => ImageState();<br>}<br>class ImageState extends State<ImageTest> {<br>  final picker = ImagePicker();<br>  File _imgPath;<br>  Future getImage(bool isTakePhoto) async {<br>    try {<br>      var pickedFile = await picker.getImage(<br>          source: isTakePhoto ? ImageSource.camera : ImageSource.gallery);<br>      if (pickedFile != null) {<br>        setState(() {<br>          _imgPath = File(pickedFile.path);<br>        });<br>      } else {<br>        print('没有选择任何图片');<br>      }<br>    } catch (e) {<br>      print("该手机不支持相机");<br>    }<br>  }<br>  @override<br>  Widget build(BuildContext context) {<br>    return Scaffold(<br>      body: ListView(<br>        children: [<br>          MaterialButton(<br>              minWidth: 100,<br>              height: 100,<br>              color: Colors.blue,<br>              onPressed: () {<br>                getImage(true);<br>              },<br>              child: Text(<br>                "拍照",<br>                style: TextStyle(fontSize: 32, color: Colors.white),<br>              )),<br>          SizedBox(<br>            height: 30,<br>          ),<br>          MaterialButton(<br>              minWidth: 100,<br>              height: 100,<br>              color: Colors.blue,<br>              onPressed: () {<br>                getImage(false);<br>              },<br>              child: Text("选择照片",<br>                  style: TextStyle(fontSize: 32, color: Colors.white))),<br>          _imgPath != null<br>              ? Image.file(<br>                  _imgPath,<br>                  fit: BoxFit.cover,<br>                )<br>              : Center(<br>                  child: Text(<br>                  "没有选择照片",<br>                  style: TextStyle(fontSize: 32, color: Colors.black)s,<br>                ))<br>        ],<br>      ),<br>    );<br>  }<br>}

 

注意:此处保存的图片存放在缓存中,如果需要保存到本地则需使用image_gallery_saver,用于保存。

以上就是 app直播系统源码,Flutter拍照与选择照片并且保存到本地实现的相关代码,更多内容欢迎关注之后的文章

 

posted @   云豹科技-苏凌霄  阅读(227)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示