[英]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.