Flutter的ClipRect的使用场景
ClipRect可以用来裁剪容器内部的子元素,以避免超出容器的范围而溢出。常见的应用场景有:
将一个图像裁剪成不同形状,如圆形、方形、椭圆等;
将一个复杂的控件裁剪成更容易理解的形状;
裁剪过大的图片或元素,以避免溢出;
使用ClipPath和ClipRect两个Widget结合,以创建更复杂的裁剪形状;
使用ClipRRect裁剪控件成圆角矩形等等。
Flutter实现圆形头像的几种方法
使用ClipRRect实现
child: ClipRRect(child: Image(image: AssetImage('images/edge.png'),fit: BoxFit.cover,width: 100,height: 100,),borderRadius: BorderRadius.circular(50),),
使用CircleAvatar实现
child: CircleAvatar(backgroundColor: Colors.white,backgroundImage: AssetImage('images/edge.png'),//半径越大,图片越大radius: 50,),
使用Container、BoxDecoration来实现
Container(width: 100,height: 100,decoration: BoxDecoration(color: Colors.white,image: DecorationImage(image: AssetImage('images/edge.png'), fit: BoxFit.cover),shape: BoxShape.circle),),