簡體   English   中英

如何使用Android中Firebase數據庫中的圖像填充listview?

[英]How to populate listview with images from Firebase Database in android?

我在Firebase存儲器中已將指向圖像的鏈接存儲到Firebase數據庫中。 我的數據庫的JSON結構如下所示:

|
 --- users
 |
 |
    ---- uid1
 |  |
 |   -- uid1
 |  |
 |   -- name
 |  |
 |   -- imageURL
 |  |
 |
 |
  -- uid2

我想做的就是用這張圖片填充我的列表視圖。 我還需要知道如何用圖像填充listview。

我讀了一些有關堆棧溢出的答案,但我不明白該如何開始。

如果有人可以提供信息和一些與此相關的代碼,我將不勝感激。

編輯 :我能夠從數據庫中獲取imageURL ,我沒有被困在那。 我想知道如何用圖像填充listview? 我在StackOverflow上看到了一些答案,但是沒有一個可以正確解決我的問題。

可以通過從適配器中的Firebase或要設置圖像的任何位置獲取圖像URL來完成。 假設您有要使用的圖像列表的示例代碼:

FirebaseDatabase.getInstance().getReference().child("users").addValueEventListener(new ValueEventListener() {
                @Override
                public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
                    for(DataSnapshot ds:dataSnapshot.getChildren()){
                        String image = ds.child("image").getValue(String.class);
                        // You can now set your Image with any method you want, Glide Picasso or any other library
//                        GlideApp.with(getContext())
//                                .load(image)
//                                .placeholder(new ColorDrawable(getResources().getColor(R.color.colorWhite)))// you can use any color here
//                                .fitCenter()
//                                .into(image_view);// An ImageView instance
                    }
                }

                @Override
                public void onCancelled(@NonNull DatabaseError databaseError) {

                }
            });

在這里要做的應該是您獲取要在ListView中顯示的項目的地方。 獲取列表后,您可以將它們傳遞到適配器中。 已注釋的GlideApp調用應該在適配器的getView方法中發生

如果您可以使用改造從Firebase中獲取圖像,那么將圖像填充到RecyclerView中將非常容易。 如果您不知道如何進行改造,則可以按照本教程進行。 https://www.raywenderlich.com/4539-android-networking

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM