Fluttter基础组件Image的使用
1.图片 Image
图片组件( Image)是显示图像的组件, Image 组件有多种构造函数 :
new Image:从 ImageProvider 获取图像 。
new Image.asset:加载资源图片。
new Image.file:加载本地图片文件。
new Image.network:加 载网络图片 。
new Image.memory:加载 Uint8List 资源图片 。
2.image.network是远程网络图片
class MyCont extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new Container(
child: new Image.network(
'https://p.6463.com/360kuai/20210622/1624351047tit.png',
alignment: Alignment.topLeft,//左上角居中
fit:BoxFit.cover,//可能裁剪,充满整个容器。不会变形
),
width: 200.0,//容器宽
height: 100.0,//容器高
);
}
}
3设置圆形容器Container的两种方式
class MyCont extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new Container(
width: 200.0,//容器宽
height: 200.0,//容器高
decoration: BoxDecoration(
//设置圆形的第一种方式
// borderRadius: BorderRadius.all(Radius.circular(100.0)),
// 设置圆形的第二种方式
borderRadius:BorderRadius.circular(100.0),
//颜色
color: Color.fromARGB(255, 192, 213, 1),
)
);
}
}
4设置圆形图片第1种方式
class MyCont extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new Container(
width: 200.0,//容器宽
height: 200.0,//容器高
decoration: BoxDecoration(
//设置圆形的第一种方式
// borderRadius: BorderRadius.all(Radius.circular(100.0)),
// 设置圆形的第二种方式
borderRadius:BorderRadius.circular(100.0),
// 设置圆形图片
image: DecorationImage(
image: NetworkImage("https://p.6463.com/360kuai/20210622/1624351047tit.png"),
fit: BoxFit.cover
)
)
);
}
}
5.设置圆形图片的第2种方式
class MyCont extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new Container(
child: new ClipOval(
child: Image.network(
'https://p.6463.com/360kuai/20210622/1624351047tit.png',
//保证在小图片的时候不变形
height: 100.0,
width: 100.0,
fit: BoxFit.cover,
),
),
);
}
}
6.引入本地土图片的方式
步骤1:
在项目的根目录下创建文件夹images也要放入
然后在images文件夹下创建 个2.0x文件夹,3.0x文件夹,4.0x文件夹
在每一个2.0下,3.0x,4.0x文件下放入对应的图片
同时在images也要放入2.0下,3.0x,4.0x下的图片
步骤2:
Flutter使用pubspec.yaml文件(位于项目根目录),
来识别应用程序所需的asset。
写上图片对应的路径
assets:
- images/bgg.png
- images/2.0x/bgg.png
- images/3.0x/bgg.png
- images/4.0x/bgg.png
注意: 由于 yaml 文件对缩进严格,
所以必须严格按照每一层两个空格的方式进行缩进,
此处assets前面应有两个空格。
还需要注意的是:引入本地图片后,
要重新启动一下flutter项目,flutter run
Flutter框架对加载过的图片是有缓存的(内存),
默认最大缓存数量是1000,最大缓存空间为100M
class MyCont extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new Container(
child: new ClipOval(
child:Image.asset(
'images/bgg.png',
//保证在小图片的时候不变形
height: 100.0,
width: 100.0,
fit: BoxFit.cover,
),
),
);
}
}
Fluttter基础组件Image的使用的更多相关文章
- winform快速开发平台 -> 基础组件之分页控件
一个项目控件主要由及部分的常用组件,当然本次介绍的是通用分页控件. 处理思想:我们在处理分页过程中主要是针对数据库操作. 一般情况主要是传递一些开始位置,当前页数,和数据总页数以及相关关联的业务逻辑. ...
- CentOS安装LNMP环境的基础组件
注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. 在安装LNMP环境之前,请确保已经使用yum安装了以下各类基础组件(如果系统已自带,还可以考虑yum update下基础组件): ...
- Ext学习-基础组件介绍
1.目标 学习对象获取,组件基础,事件模型以及学习ExtJS中的基础组件的应用. 2.内容 1.对象获取 2.组件原理以及基础 3.事件模型 4.常用组件的介绍 3.学习步骤 1 ...
- 如何从零开始实现一个soa远程调用服务基础组件
说起soa远程调用基础组件,最著名的莫过于淘宝的dubbo了,目前很多的大型互联网公司都有一套自己的远程服务调用分布式框架,或者是使用开源的(例如dubbo),或者是自己基于某种协议(例如hessia ...
- android学习——必学基础组件
android基础组件是一个Android的开发人员必须要了解,且深刻理解的东西: 1.应用程序基础 2.应用程序组件 2.1.活动(Activities) 2.2.服务(Services) 2.3. ...
- Android 基础组件
基础组件 所有的控件都可以在java代码中创建出来,并且大部分的属性都对应set和get方法,比如 View view = new View(Context context) context是上下文 ...
- Akka(17): Stream:数据流基础组件-Source,Flow,Sink简介
在大数据程序流行的今天,许多程序都面临着共同的难题:程序输入数据趋于无限大,抵达时间又不确定.一般的解决方法是采用回调函数(callback-function)来实现的,但这样的解决方案很容易造成“回 ...
- App架构师实践指南三之基础组件
App架构师实践指南三之基础组件 1.基础组件库随着时间的增长,代码量的逐渐积累,新旧项目之间有太多可以服用的代码.下面是整理的公共代码库. 2.关于加密密钥的保护以及网络传输安全是移动应用安全最关键 ...
- JMeter各个基础组件简介
刚从LoadRunner转到JMeter,对JMeter的各种概念比较懵.在这里记录下.欢迎大家关注我的个人微信号:测试杂货铺. JMeter的各个功能都是它的组件来完成或实现的,下面来对JMeter ...
- Ansible playbook基础组件介绍
本节内容: ansible playbook介绍 ansible playbook基础组件 playbook中使用变量 一.ansible playbook介绍 playbook是由一个或多个“pla ...
随机推荐
- 内衣 ERP 系统 (Delphi)
服装行业ERP系统,当时从开始实施推行,最后二次开发,源代码交接... 发几个截图看看 可配置的查询 这个功能几乎被我全改过... 后台报表配置 欢迎微信搜一搜 IT软件部落 关注公众号,你可以了解更 ...
- 从零开始学机器学习——K-Means 聚类
首先给大家介绍一个很好用的学习地址:https://cloudstudio.net/columns 在上一章节中,我们重点探讨了聚类的可视化分析方法,帮助我们更好地理解数据之间的关系和结构.今天,我们 ...
- LDA——线性判别分析基本推导与实验
介绍与推导 LDA是线性判别分析的英文缩写,该方法旨在通过将多维的特征映射到一维来进行类别判断.映射的方式是将数值化的样本特征与一个同维度的向量做内积,即: $y=w^Tx$ 因此,建立模型的目标就是 ...
- vue遇到Conflicting order. Following module has been added:(加载顺序冲突)
其中article.vue和topGroup.vue这两个文件在模块unitTest和wrongBook上出现加载冲突 其中一个文件先加载topGroup.vue文件其中一个文件先加载article. ...
- 初见memcached
一. 概念 Memcached是danga.com(运营LiveJournal的技术团队)开发的一套分布式内存对象缓存系统,用于在动态系统中减少数据库负载,提升性能. 二. 适用场合 1. 分布式应用 ...
- Java线程池Executors
一 简述 线程池,作为一个管理一组同构工作线程的资源.接受提交的任务,利用线程池中的线程进行工作的处理. 在另一篇<Java多线程设计模式(4)线程池模式>利用非Executors描述了线 ...
- Python:编程“八荣八耻”之我见
刚在逛CPyUG时看到了个主题讨论python的八荣八耻,见:http://bit.ly/4jeBor, 主题内容如下: 以动手实践为荣,以只看不练为耻. 以打印日志为荣,以单步跟踪为耻. 以空白 ...
- 三、FreeRTOS学习笔记-系统配置
FreeRTOSConfig.h配置文件作用:对FreeRTOS进行功能配置和裁剪,以及API函数的使能. 系统配置文件中主要是一些宏定义 相关宏定义可分为三类: 1."INCLUDE&qu ...
- 使用redis 的订阅服务
1.业务使用场景 我们在使用表单动态添加字段,如果新增字段,再保存数据,这个时候就会出错,出错的原因是seata 再本地缓存元数据,修改物理表的时候,这个元数据并没有发生变化,因此需要刷新元数据,因为 ...
- electron项目build报资源包下载出错
前情 公司有个桌面端项目是基于Electron开发的. 坑 上一次遇到npm install时安装electron无法安装,通过配置.npmrc文件解决了,今天在在执行npm run build的时候 ...