返回
Flutter图片组件Image:从基础到圆形图片渲染
前端
2023-09-14 02:17:01
在Flutter中,Image组件是用于展示图片的常用Widget。它支持多种图片格式,包括PNG、JPEG和GIF。Image组件可以从本地加载图片,也可以从网络加载图片。
加载本地图片
要加载本地图片,可以使用Image.asset()构造函数。Image.asset()构造函数的参数是一个字符串,该字符串指定要加载的图片的路径。例如,以下代码加载了名为"image.png"的本地图片:
Image.asset('assets/images/image.png'),
加载网络图片
要加载网络图片,可以使用Image.network()构造函数。Image.network()构造函数的参数是一个字符串,该字符串指定要加载的图片的URL。例如,以下代码加载了名为"image.png"的网络图片:
Image.network('https://example.com/images/image.png'),
设置圆形图片
要设置圆形图片,可以使用Container组件结合Decoration、BorderRadius、Border、CircleBorder和RoundedRectangleBorder等属性。
第一种方式:使用Container组件
Container(
width: 100.0,
height: 100.0,
decoration: BoxDecoration(
shape: BoxShape.circle,
image: DecorationImage(
image: AssetImage('assets/images/image.png'),
fit: BoxFit.cover,
),
),
),
第二种方式:使用BorderRadius属性
Image(
image: AssetImage('assets/images/image.png'),
width: 100.0,
height: 100.0,
borderRadius: BorderRadius.circular(50.0),
),
第三种方式:使用Border属性
Image(
image: AssetImage('assets/images/image.png'),
width: 100.0,
height: 100.0,
border: Border.all(
width: 2.0,
color: Colors.red,
style: BorderStyle.solid,
),
borderRadius: BorderRadius.circular(50.0),
),
第四种方式:使用CircleBorder属性
Image(
image: AssetImage('assets/images/image.png'),
width: 100.0,
height: 100.0,
border: Border.all(
width: 2.0,
color: Colors.red,
style: BorderStyle.solid,
),
shape: BoxShape.circle,
),
第五种方式:使用RoundedRectangleBorder属性
Image(
image: AssetImage('assets/images/image.png'),
width: 100.0,
height: 100.0,
borderRadius: BorderRadius.circular(50.0),
border: Border.all(
width: 2.0,
color: Colors.red,
style: BorderStyle.solid,
),
),
总结
Image组件是Flutter中用于展示图片的常用Widget。它支持多种图片格式,包括PNG、JPEG和GIF。Image组件可以从本地加载图片,也可以从网络加载图片。通过使用Container组件结合Decoration、BorderRadius、Border、CircleBorder和RoundedRectangleBorder等属性,可以轻松实现圆形图片的渲染。