当我从实时数据库读取数据时,它只获取用户名并将 imageurl 获取为“null”但是我在实时数据库中有 url
Posted
技术标签:
【中文标题】当我从实时数据库读取数据时,它只获取用户名并将 imageurl 获取为“null”但是我在实时数据库中有 url【英文标题】:When I read data from Realtime database it fetch just username and fetch imageurl as "null" however i have url in Realtime database 【发布时间】:2021-06-06 13:09:17 【问题描述】:当我从实时数据库读取数据时,它只获取用户名并将 imageurl 获取为“null”,但是我在实时数据库中有 URL。这是代码。
root.child(FirebaseAuth.getInstance().getCurrentUser().getUid()).addValueEventListener(new ValueEventListener()
@Override
public void onDataChange(@NonNull DataSnapshot snapshot)
for (DataSnapshot dataSnapshot: snapshot.getChildren())
String userName =dataSnapshot.getValue(PostModel.class).getUserName();
String imageUrl=dataSnapshot.getValue(PostModel.class).getImageUrl();
postModelArrayList.add(new PostModel(userName,imageUrl));
WallPostAdapter wallPostAdapter= new WallPostAdapter(WallPost.this,postModelArrayList);
postRecycler.setAdapter(wallPostAdapter);
wallPostAdapter.notifyDataSetChanged();
@Override
public void onCancelled(@NonNull DatabaseError error)
);
后模型
String userName,ImageUrl;
public PostModel()
public PostModel(String userName, String imageUrl)
this.userName = userName;
ImageUrl = imageUrl;
public String getUserName()
return userName;
public void setUserName(String userName)
this.userName = userName;
public String getImageUrl()
return ImageUrl;
public void setImageUrl(String imageUrl)
ImageUrl = imageUrl;
数据库图片
【问题讨论】:
请编辑您的问题并添加您的PostModel
课程的内容。
完成先生,我添加 PostModel 类
【参考方案1】:
由于以下 getter,您将得到 imageUrl 的“null”:
public String getImageUrl()
return ImageUrl;
正在数据库中查找名为imageUrl
的属性,但实际上不 存在。应该调用正确的 getter:
public String getPostUrl()
return ImageUrl;
因为您的财产被称为postUrl
。
附:因为您使用的是公共 getter 和 setter,所以您应该将类中的属性设为私有。
【讨论】:
以上是关于当我从实时数据库读取数据时,它只获取用户名并将 imageurl 获取为“null”但是我在实时数据库中有 url的主要内容,如果未能解决你的问题,请参考以下文章
从子进程读取的实时标准输出仅在从 PyCharm 而不是终端运行时才有效
从 firebase 检索数据并将其显示在可扩展的 recyclerview 中