文章目录

  • 一丶 效果图
  • 二丶 代码+注释
  • 三丶 知识点

一丶 效果图

【1】引用远程图片

【2】引用本地图片

【3】实现圆形图片(方法一)、圆角图片(受弧度影响)

【4】实现圆形图片(方法二)

二丶 代码+注释

【1】引用远程图片

import 'package:flutter/material.dart';
void main()=> runApp(MyApp());class MyApp extends StatelessWidget{@overrideWidget build(BuildContext context) {// TODO: implement buildreturn MaterialApp(home: Scaffold(appBar: AppBar(title: Text('FlutterDemo'),),body: HomeCentent(),),);}
}class HomeCentent extends StatelessWidget{@overrideWidget build(BuildContext context) {// TODO: implement buildreturn Center(child: Container(child: Image.network(                   //引入一张远程图片"https://www.itying.com/images/flutter/2.png",   //远程图片链接alignment: Alignment.topLeft,     //设置图片的方位在左上角
//            color: Colors.yellow,   //设置这张图片的颜色
//            colorBlendMode: BlendMode.luminosity, //设置颜色的混合模式fit:BoxFit.cover,       //设置图片的显示模式,cover—全屏显示,最常用!
//            repeat: ImageRepeat.repeatX,    //横向平铺,纵向不变
//            repeat: ImageRepeat.repeat,   //横向纵向都平铺,),width: 300,height: 300,decoration: BoxDecoration(color: Colors.yellow          //设置方框背景颜色),));}
}

【2】引用本地图片
先做准备工作:(三步)
1.项目根目录下,创建Images文件夹,如下图:
2.分别创建2.0x,3.0x,4.0x并且在这些文件夹里面放图片,然后再在外面放一张图片,如图:

3.在pubspec.yaml 文件里,增加如下配置:

点击右上角 Packages get并且要Ctrl+s保存
然后就可以开始敲代码了:

import 'package:flutter/material.dart';
void main()=> runApp(MyApp());class MyApp extends StatelessWidget{@overrideWidget build(BuildContext context) {// TODO: implement buildreturn MaterialApp(home: Scaffold(appBar: AppBar(title: Text('FlutterDemo'),),body: HomeCentent(),),);}
}class HomeCentent extends StatelessWidget{@overrideWidget build(BuildContext context) {// TODO: implement buildreturn Center(child: Container(child: Image.asset('images/aa.png',   //导入本地图片fit: BoxFit.cover,),height: 300,width: 300,));}
}

【3】实现圆形图片(方法一)、圆角图片(根据弧度变化)

    return Center(child: Container(width: 300,height: 300,decoration: BoxDecoration(color: Colors.yellow ,         //设置方框背景颜色
//            borderRadius: BorderRadius.all(
//              Radius.circular(150)      //变成圆形,不过一般不这么实现圆形图片
//            ),borderRadius: BorderRadius.circular(150),       //实现圆形图片的方式一:   有些麻烦image: DecorationImage(image: NetworkImage("https://www.itying.com/images/flutter/2.png"),fit: BoxFit.cover     //铺满全屏),),));

【4】实现圆形图片(方法二):

    return Center(child: Container(child: ClipOval(    //实现圆形图片方式二,最简单的方式child: Image.network('https://www.itying.com/images/flutter/2.png',height: 100,width: 100,fit: BoxFit.cover,),),));

三丶 知识点

图片组件是显示图像的组件,Image 组件有很多构造函数,这里我们只给大家讲两个
Image.asset, 本地图片
Image.network 远程图片

Image 组件的常用属性:

名称                       类型                              说明alignment                     Alignment                       图片的对齐方式color 和 colorBlendMode       设置图片的背景颜色,通常和 colorBlendMode 配合一起使用,这样可以是图片颜色和背景色混合。上面的图片就是进行了颜色的混合,绿色背景和图片红色的混合                                   fit                         BoxFit                      fit 属性用来控制图片的拉伸和挤压,这都是根据父容器来的。
BoxFit.fill:全图显示,图片会被拉伸,并充满父容器。
BoxFit.contain:全图显示,显示原比例,可能会有空隙。
BoxFit.cover:显示可能拉伸,可能裁切,充满(图片要充满整个容器,还不变形)。
BoxFit.fitWidth:宽度充满(横向充满),显示可能拉伸,可能裁切。
BoxFit.fitHeight :高度充满(竖向充满),显示可能拉伸,可能裁切。
BoxFit.scaleDown:效果和 contain 差不多,但是此属性不允许显示超过源图片大小,可小不可大。repeat                        平铺
ImageRepeat.repeat : 横向和纵向都进行重复,直到铺满整个画布。
ImageRepeat.repeatX: 横向重复,纵向不重复。
ImageRepeat.repeatY:纵向重复,横向不重复。width                          宽度 一般结合 ClipOval 才能看到效果height                           高度 一般结合 ClipOval 才能看到效果
更多属性参考:https://api.flutter.dev/flutter/widgets/Image-class.html

Futter基础第3篇: 实现引用远程图片、本地图片、实现圆形图片,实现圆角图片【Image.network、Image.asset、BorderRadius.circular(150)】相关推荐

  1. python turtle基本语法_Python 基础语法-turtle篇

    Python 基础语法-turtle篇 今天这节课主要讲了类的概念,并引出turtle中的函数和Turtle类. -创建一个Turtle类:brad=turtle.Turtle() -定义Turtle ...

  2. JS--我发现,原来你是这样的JS(三)(基础概念--灵魂篇)

    一.介绍 这是红宝书(JavaScript高级程序设计 3版)的读书笔记第三篇(灵魂篇介绍),有着剩下的第三章的知识内容. 红宝书这本书可以说是难啃的,要看完不容易,挺厚的,要看懂更不容易,要熟练js ...

  3. 新手如何Reverces(基础ctf教程篇)

    新手如何Reverces(基础ctf教程篇) 提示:文章依靠C语言,并且需要了解内存机制 文章目录 新手如何Reverces(基础ctf教程篇) 前言 一.关键代码定位 1.API断点法 2.字符串检 ...

  4. vue2+vue3小白零基础教程—vue2篇,全网2021最详细教程

    vue教程 提示:Vue3系列请参考Vue2+Vue3小白零基础教程-vue3篇文章,本文为vue2篇. 1. Vue核心 1.1 Vue简介 1.1.1 Vue是什么 一套用于构建用户界面的渐进式J ...

  5. 零基础学C++——黑马程序员课程笔记(C++基础语法入门篇)

    封面来自互联网侵删 视频地址:点击访问 (我这里开发工具选用VSstudio) 此笔记有三个系列: C++基础语法入门篇 C++核心编程篇 点击查看 C++提高编程篇 文章目录 C++初识 变量 常量 ...

  6. 基础知识:篇4-make工具与Makefile文件概念

    说明:   本文章旨在总结备份.方便以后查询,由于是个人总结,如有不对,欢迎指正:另外,内容大部分来自网络.书籍.和各类手册,如若侵权请告知,马上删帖致歉.   QQ 群 号:513683159 [相 ...

  7. python基础语法大全turtle_Python 基础语法-turtle篇-Go语言中文社区

    Python 基础语法-turtle篇 今天这节课主要讲了类的概念,并引出turtle中的函数和Turtle类. -创建一个Turtle类:brad=turtle.Turtle() -定义Turtle ...

  8. 《精通QTP——自动化测试技术领航》—第1章1.5节QTP精华—对象库(上)之基础攻略篇...

    本节书摘来自异步社区<精通QTP--自动化测试技术领航>一书中的第1章1.5节QTP精华-对象库(上)之基础攻略篇,作者余杰 , 赵旭斌,更多章节内容可以访问云栖社区"异步社区& ...

  9. shell基础二十篇 一些笔记

    shell基础二十篇 转自 http://bbs.chinaunix.net/thread-452942-1-1.html 研讨:Bash 内建命令 read (read命令更具体的说明见博客收藏的一 ...

最新文章

  1. 【codeforces 766E】Mahmoud and a xor trip
  2. SQL Server 2005系列教学(14) 用户管理
  3. 华为交换机导入配置_华为交换机基础配置1—进入命令行
  4. Shiro之权限管理的概念
  5. es常用curl命令
  6. 51nod 1277 KMP 前缀出现次数
  7. linux shell if
  8. 第12章[12.10.1] Ext JS + CKEditor+Spring Boot 实现编辑器图片上传
  9. Emacs之正则查多字符串(occur)
  10. 拓端tecdat|R语言结合新冠疫情COVID-19对股票价格预测:ARIMA,KNN和神经网络时间序列分析
  11. 翻译java代码软件_apk源代码翻译器|安卓软件apk源代码翻译器下载_V1.0_9号软件下载...
  12. iis在xp3上的部署
  13. [POJ3537]Crosses and Crosses
  14. allpairs工具的使用
  15. python接口自动化之自动发送测试报告邮件
  16. qq邮箱 服务器认证失败怎么回事,为什么我的QQ邮箱登录不了 QQ邮箱无法登陆怎么解决...
  17. 机器学习中的数学——距离定义(二十二):海林格距离(Hellinger Distance)
  18. 再战港交所的高视医疗,近视小伙伴的福音?
  19. android换肤动画,Android换肤(二) — 插件式换肤
  20. 【问题解决】samba添加用户和密码时报错 Failed to add entry for user

热门文章

  1. WPS表格如何从文本中提取数字
  2. [深入研究4G/5G/6G专题-24]: 5G NR开机流程4.2 - 随机接入应答消息MSG2的调度过程与上行同步、时间提前量TA通过PDSCH信道下发
  3. 分享海报以及微信模板消息推送
  4. JavaScript基本类型之--BigInt
  5. 如何设置佳能4225i扫描文稿发送到电脑的文件夹
  6. 免费送10个机械键盘,不是粉丝的绕道!!!
  7. 【数字图像处理】实验一图像基本变换(MATLAB实现)
  8. js控制网页全屏,监听退出全屏动作
  9. 量子遗传算法求解带多种约束的多元线性/非线性函数最值
  10. 亚马逊批量注册账号流程