【发布时间】:2020-04-26 00:30:33
【问题描述】:
美好的一天,我正在努力使我在应用栏右上角的头像成为一个完美的圆圈。它一直呈椭圆形。
我尝试了很多选项(包括设置半径、使用 ClipRRect、ClipOval 等),但似乎不会影响圆边的形状。
代码:
return Scaffold(
appBar: AppBar(
automaticallyImplyLeading: false,
backgroundColor: COLORS_BG,
title: Padding(
padding: const EdgeInsets.only(top: 10.0),
child: Row(
children: <Widget>[
Image.asset('images/localhourlogo.png', height: 50.0,),
]
),
),
actions: <Widget>[
PopupMenuButton<String>(
icon: CircleAvatar(
backgroundImage: NetworkImage(googleUserUrl)
),
onSelected: choiceAction,
itemBuilder: (BuildContext context) {
return MenuItems.choices.map((String choice) {
return PopupMenuItem<String> (
value: choice,
child: Text(choice),
);
}).toList();
},
)
],
目标:使头像成为纯圆形,而不是椭圆形。
试过: ClipRRect、ClipOval、设置半径最小值和最大值等
感谢您的任何帮助。
【问题讨论】:
-
你确定图片不是椭圆的吗?
-
您说的是 CircleAvatar 小部件吗?默认情况下,它是圆形,而不是椭圆形。您的图像的形状不合适,或者您正在使用自己的更改来更改形状。正如你在这里看到的:dartpad.dartlang.org/cba1149f189df8eed9e29953acb4f4fd
-
图像最初是正方形的,因为它是没有 CircleAvatar 的样子
-
我已经进行了更多测试,它是 AppBar Widget 对您的头像执行此操作。我很确定我们可以修复它。给我几分钟。