const Image({...this.width, //图片的宽this.height, //图片高度this.color, //图片的混合色值this.colorBlendMode, // 进行颜色混合处理this.fit,//缩放模式this.alignment = Alignment.center, //对齐方式this.repeat = ImageRepeat.noRepeat, //重复方式...})
1 加载网络图片
class MyHomeBody extends StatelessWidget {@overrideWidget build(BuildContext context) {return Center(child: Container(child: Image.network("http://img0.dili360.com/ga/M01/48/3C/wKgBy1kj49qAMVd7ADKmuZ9jug8377.tub.jpg",alignment: Alignment.topCenter,repeat: ImageRepeat.repeatY,color: Colors.red,colorBlendMode: BlendMode.colorDodge,),width: 300,height: 300,color: Colors.yellow,),);}}

2 加载本地图片

加载本地图片稍微麻烦一点,需要将图片引入pubspec.yaml, 并且需要重启整个程序
class MyHomeBody extends StatelessWidget {@overrideWidget build(BuildContext context) {return Center(child: Container(width: 300,height: 300,color: Colors.yellow,child: Image.asset("images/a_dog.jpeg"),),);}}
3 实现圆形图片
(1) CircleAvatar

class HomeContent extends StatelessWidget {@overrideWidget build(BuildContext context) {return Center(child: CircleAvatar(radius: 100,backgroundImage: NetworkImage("https://tva1.sinaimg.cn/large/006y8mN6gy1g7aa03bmfpj3069069mx8.jpg"),child: Container(alignment: Alignment(0, .5),width: 200,height: 200,child: Text("兵长利威尔")),),);}}
(2) ClipOval

class HomeContent extends StatelessWidget {@overrideWidget build(BuildContext context) {return Center(child: ClipOval(child: Image.network("https://tva1.sinaimg.cn/large/006y8mN6gy1g7aa03bmfpj3069069mx8.jpg",width: 200,height: 200,),),);}}
4 实现圆角图片
(1) ClipRRect

class HomeContent extends StatelessWidget {@overrideWidget build(BuildContext context) {return Center(child: ClipRRect(borderRadius: BorderRadius.circular(10),child: Image.network("https://tva1.sinaimg.cn/large/006y8mN6gy1g7aa03bmfpj3069069mx8.jpg",width: 200,height: 200,),),);}}
(2) Container+BoxDecoration
以后加上
5 缓存图片
在一些情况下,缓存从网络下载的图片用于离线显示是十分方便的,你需要引入 cached_network_image 这个 package 来实现这项功能。
除了缓存,cached_image_network 包也支持占位符和加载后的图片淡入。
CachedNetworkImage(placeholder: (context, url) => const CircularProgressIndicator(),imageUrl: 'https://picsum.photos/250?image=9',),
