-1

当我从 Firestore 检索图像时,我在图像滑块(幻灯片)中显示图像的代码正在工作,但是我试图从 Firebase 存储中检索它,这让我很难过。

这是我从 Firestore 中检索的工作代码。

public void update(View view) {
        DocumentReference user=db.collection("FILES").document("images");
        user.get().addOnCompleteListener(new OnCompleteListener<DocumentSnapshot>() {
            @Override
            public void onComplete(@NonNull Task<DocumentSnapshot> task) {
                if (task.isSuccessful())
                {
                    DocumentSnapshot doc=task.getResult();
                    //For Image1
                    StringBuilder img1=new StringBuilder("");
                    img1.append(doc.get("image1"));
                    image1.setText(img1.toString());
                    String image1url=image1.getText().toString();
                    Picasso.get().load(image1url).into(imageView1);

                    //For Image2
                    StringBuilder img2=new StringBuilder("");
                    img2.append(doc.get("image2"));
                    image2.setText(img2.toString());
                    Stringimage2url=image2.getText().toString();
                       Picasso.get().load(image2url).into(imageView2);
}
            }
        }).addOnFailureListener(new OnFailureListener() {
            @Override
            public void onFailure(@NonNull Exception e) {
                Toast.makeText(ImageSlider.this, "Falied", Toast.LENGTH_SHORT).show();
            }
        });
    }

我试过这个从firebase存储中获取它,但'get()'显示为错误

get().addOnCompleteListener(new OnCompleteListener

有任何想法吗?

当我尝试以下操作时,get() 不起作用:

public void update(View view) {
        DatabaseReference mDatabaseRef = FirebaseDatabase.getInstance().getReference().child("uploads").child("uploads");
        mDatabaseRef.get().addOnCompleteListener(new OnCompleteListener<DocumentSnapshot>() {
            @Override
            public void onComplete(@NonNull Task<DocumentSnapshot> task) {
4

1 回答 1

0
private void getData () {             
        DatabaseReference reference;
        reference.child("whatever").addListenerForSingleValueEvent(new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot dataSnapshot) {
                Model model = dataSnapshot.getValue(Model.class);
                imageURL = model.getUrl();


            }
            @Override
            public void onCancelled(DatabaseError databaseError) {
            }
        });
    }

addListenerForSingleValueEvent如果您需要多次读取值并使用您的值读取值,请进行更改。

于 2019-02-25T21:44:56.140 回答