我想将图片从Firebase存储加载到操作栏。如果我将引用加载到ImageView中,我尝试使用Glide,就像我一样。这不行,我做了一些挖掘并发现了对Glide.with(this).load(source).into(new Task)的引用{但我不知道如何解释这个,或者它是否允许我将图像设置为操作栏图标/徽标。任何意见,将不胜感激。我是android的新手。我学习了java,使用JavaFX编写桌面应用程序。这种转变需要一些调整,这真的让我很难过。我觉得他们可能是一个简单的解决方案,但我是一个新手,它正在逃避我。我已经攻击了几天,没有运气。我会以任何形式接受建议。谢谢。
答案 0 :(得分:0)
发布后我立即尝试了一些新功能,并且有效。这是我使用的代码。我将其下载到一个文件中,然后从文件中创建了一个Drawable。
StorageReference image = storageReference.child(firebaseAuth.getUid())。child(“Images”)。child(“Profile_Pic”);
try {
final File localFile = File.createTempFile("images", "jpg");
image.getFile(localFile).addOnSuccessListener(new OnSuccessListener<FileDownloadTask.TaskSnapshot>() {
@Override
public void onSuccess(FileDownloadTask.TaskSnapshot taskSnapshot) {
String pathName = localFile.getPath();
Drawable d = Drawable.createFromPath(pathName);
actionBar.setLogo(d);
}
}).addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception exception) {
Toast.makeText(HowItWorksActivity.this, "OOPS", Toast.LENGTH_LONG).show();
}
});
} catch (IOException e) {
Toast.makeText(HowItWorksActivity.this, "Realy off", Toast.LENGTH_LONG).show();
}StorageReference image = storageReference.child(firebaseAuth.getUid()).child("Images").child("Profile_Pic");
try {
final File localFile = File.createTempFile("images", "jpg");
image.getFile(localFile).addOnSuccessListener(new OnSuccessListener<FileDownloadTask.TaskSnapshot>() {
@Override
public void onSuccess(FileDownloadTask.TaskSnapshot taskSnapshot) {
String pathName = localFile.getPath();
Drawable d = Drawable.createFromPath(pathName);
actionBar.setLogo(d);
}
}).addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception exception) {
Toast.makeText(HowItWorksActivity.this, "OOPS", Toast.LENGTH_LONG).show();
}
});
} catch (IOException e) {
Toast.makeText(HowItWorksActivity.this, "Realy off", Toast.LENGTH_LONG).show();
}