我正在使用
简单来说,我不知道如何从Firebase检索图片并将其分配到
以下是我尝试更新圆形头像的方式 -
这会上传图片,但我不知道如何将其检索到特定用户配置文件的
ImagePicker
来选择个人资料图片,一旦选择了图片,它将被赋值给Circle Avatar
,现在我该如何将这张图片上传到Firebase中。如果用户刷新页面(UI),Circle Avatar
又回到了默认的图片!我需要用当前用户的图片替换Circle Avatar
。简单来说,我不知道如何从Firebase检索图片并将其分配到
Circle Avatar
中。以下是我尝试更新圆形头像的方式 -
CircleAvatar(
radius: 30.0,
backgroundColor: Colors.white,
child: (_imageFile != null)
? Container(
decoration: BoxDecoration(
shape: BoxShape.circle,
image: DecorationImage(
image: FileImage(_imageFile),//Selected Image
fit: BoxFit.fill),
),
)
: Image.network(
(photoUrl == null)
? 'https://www.materialui.co/materialIcons/image/add_a_photo_black_36x36.png'//Default Picture
: photoUrl,
fit: BoxFit.fill,
), //Replace with Image From DB
上传图片 -
Future UpdatePic() async{
String fileName = basename(_imageFile.path);
StorageReference firebaseStorageRef =
FirebaseStorage.instance.ref().child(fileName);
StorageUploadTask uploadTask = firebaseStorageRef.putFile(_imageFile);
StorageTaskSnapshot taskSnapshot = await uploadTask.onComplete;
showInSnackBar("Picture updated successfully.");
}
这会上传图片,但我不知道如何将其检索到特定用户配置文件的
Circle Avatar 中。
_imageFile
。这是你正在上传的同一个文件。如果你已经拥有该文件,就没有必要浪费资源从存储中读取。 - Christopher Moore