【发布时间】:2021-09-17 06:26:24
【问题描述】:
如果从网络上找不到用户图像,我想显示资产中的默认图像,那么我该怎么做呢?
下面的代码是用于抽屉的。
class MyDrawer extends StatefulWidget {
final LogedinUser user;
const MyDrawer({Key? key, required this.user}) : super(key: key);
@override
_MyDrawerState createState() => _MyDrawerState();
}
class _MyDrawer1State extends State<MyDrawer1> {
final imageUrl = Api().uploadUrl;
@override
Widget build(BuildContext context) {
return Drawer(
child: Column(
children: [
DrawerHeader(
padding: EdgeInsets.zero,
child: UserAccountsDrawerHeader(
decoration: BoxDecoration(
gradient: LinearGradient(colors: [
const Color(0xFFee436e),
const Color(0xFFF37D71),
])),
margin: EdgeInsets.zero,
accountName: Text(
widget.user.name.toString(),
textScaleFactor: 1.5,
),
accountEmail: Text(widget.user.email.toString()),
currentAccountPicture: CircleAvatar(
backgroundImage: NetworkImage("$imageUrl" + widget.user.avatar),
//AssetImage('assets/logos/tempprofile.png'),
),
),
),
Expanded(
child: ListView(
padding: EdgeInsets.zero,
children: [],
),
)
],
),
);
}
}
图像显示完美,但如果图像不可用,我想显示资产中的默认图像。
【问题讨论】:
-
你的意思是当
user.avatar没有设置或者找不到图片的时候? -
是的,正如你所说的