Flutter 如何在边框中左右对齐
我有一个问题,我希望图像在边框中左右对齐,请帮助我!Flutter 如何在边框中左右对齐,flutter,Flutter,我有一个问题,我希望图像在边框中左右对齐,请帮助我! 使用ClipOval在CircleAvatar内绘制图像 斜坡 孩子:新CircleAvatar 半径:66, 子级:newimage.asset'assets/images/Image.jpg', , , 您需要在图片中添加合适的封面 例如: 斜坡 子:Image.asset 路径图像, 适合:BoxFit.cover, 或 或 圆形 半径:30.0, 背景图片: NetworkImage“您的img\u url”, 背景颜色:Colors
使用ClipOval在CircleAvatar内绘制图像 斜坡 孩子:新CircleAvatar 半径:66, 子级:newimage.asset'assets/images/Image.jpg', , ,
您需要在图片中添加合适的封面 例如: 斜坡 子:Image.asset 路径图像, 适合:BoxFit.cover, 或 或 圆形 半径:30.0, 背景图片: NetworkImage“您的img\u url”, 背景颜色:Colors.grey,//占位符颜色 `` 我希望这有帮助
处理有图像和无图像以及避免半径的两种情况的最佳方法是使用带有适当参数的ClipOval和CircleAvatar 如何使用它 在您使用它的地方,您可以放置:
Positioned(
left: 16,
right: 16,
child: CircleAvatar(
radius: 66,
child: response.users.photo != null
? Image.network(Modal.url + response.users.photo, width: 120, height: 140,)
: Image.asset(
'assets/user-icon.png',
),
),
这是唯一一个可以设置尺寸、无半径等的地方
构建化身
这个方法将根据照片返回两种类型的小部件,它是否为null
child: Container(
width: 300,
height: 300,
child: ClipOval(
child: buildAvatar(photo),
),
),
演示
在运行时,我修改照片是null还是url ans大小150x150和300x300
我的解决方案有效吗?:
Widget buildAvatar(String photo) {
if (photo == null) {
return CircleAvatar(
child: Container(
color: Colors.white,
padding: const EdgeInsets.all(30.0),
child: Image.asset(
'assets/user-icon.png',
),
));
} else {}
return CircleAvatar(
backgroundImage: NetworkImage(
photo,
),
);
}