【问题标题】:Downloading storageReference to drawable下载 storageReference 到 drawable
【发布时间】:2018-05-13 02:14:25
【问题描述】:

我想将图片从 Firebase 存储加载到操作栏。我尝试使用 Glide,就像我将引用加载到 ImageView 中一样。这行不通,我进行了一些挖掘并找到了对 Glide.with(this).load(source).into(new Task){ 的引用,但我不确定如何执行此操作,或者它是否允许我将图像设置为操作栏图标/徽标。任何意见,将不胜感激。我是安卓新手。我学习了 java,用 JavaFX 编写桌面应用程序。过渡已经进行了一些调整,这真的让我很难过。我觉得他们可能是一个简单的解决方案,但我是一个新手,它正在逃避我。我已经破解了几天,没有运气。我会接受任何形式的建议。谢谢。

【问题讨论】:

    标签: android


    【解决方案1】:

    发布此消息后,我立即尝试了一些新方法,并且成功了。这是我使用的代码。我将它下载到一个文件中,然后从该文件中创建了一个 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();
            }
    

    【讨论】:

      猜你喜欢
      • 2019-10-13
      • 1970-01-01
      • 2018-08-01
      • 1970-01-01
      • 2019-06-26
      • 1970-01-01
      • 1970-01-01
      • 2018-11-04
      • 1970-01-01
      相关资源
      最近更新 更多