当前位置: 首页 > 知识库问答 >
问题:

如何从firebase节点获取值

龙令
2023-03-14

我想在Android Studio中获取isSeen节点的值。M6F2mJjQ8uGPXAynZzV是消息的id,并将消息更改为消息。我想在适配器类中获得这个值。

共有2个答案

况景龙
2023-03-14

如果要获取isSeen值,请尝试以下操作:

DatabaseReference ref = FirebaseDatabase.getInstance().getReference().child("Chats");
ref.addListenerForSingleValueEvent(new ValueEventListener() {
         @Override
      public void onDataChange(DataSnapshot dataSnapshot) {
           for(DataSnapshot data: dataSnapshot.getChildren()){
                   Boolean isSeen = data.child("isSeen").getValue(Boolean.class);
                  }
            }

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

Chats节点内迭代,然后可以检索isSeen

计胤
2023-03-14

所以你想得到一个布尔值,转换为字符串,并将其与另一个字符串进行比较:

如果这是你想要的,那么这就是你的答案:

//this is the string that you want to compare against
String yourString = "true";

//this is your reference
DatabaseReference ref = FirebaseDatabase.getInstance().getReference().child("Chats");


//make a listener
ValueEventListener listener = new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot dataSnapshot) {
        //loop through the random key IDs

        for(DataSnapshot ds : dataSnapshot.getChildren()){
        //get the boolean "isSeen"
        boolean isSeen = ds.child("isSeen").getValue(Boolean.class);

        //convert boolean to string
        String isSeenString = String.valueOf(isSeen);

        //compare isSeenString with your String

        if(isSeenString.equals(yourString)){
          //they are equal

         }else{
          //they are not equal

           }

        }
    }

    @Override
    public void onCancelled(DatabaseError databaseError) {

    }
};

//add the listener
ref.addValueEventListener(listener);
 类似资料:
  • 我一直无法从Firebase中获取显示名称。下面是注册过程编码 控制台.log显示“用户名集!”,控制台.log(firebaseUser)显示显示名称是在当前用户的数据库中设置的,并且名称是我期望的。然而 给出null,并且 这也返回为null。 我一直在寻找获取firebase数据集数据的方法,但我无法做到这一点。 如果有人能给我一些建议,那就太好了。 非常感谢。

  • 我有以下html结构。输入的id值是动态的。例如。gwt-uid-150我正在尝试编制一个Xpath来获得标记为“逗号”的单选按钮,以便单击它。 如果我使用以下Xpath,我可以获得标签 谢谢,Riaz

  • 我想获取日期字段,但下面的代码没有这样做。Toast显示null(字符串日期的值)。 公共字符串日期;

  • 问题内容: 我有一段这样的HTML: 我有一个与此HTML匹配的WebElement。如何从中仅提取“标题”?方法.getText()返回“ Title \ nAuthor”。 问题答案: 您无法在WebDriver API中执行此操作,而必须在代码中执行。例如: 请注意,结尾的换行符实际上是元素文本的一部分,因此,如果您不想要它,则需要将其删除。

  • 我已经复制了某个节点的xpath Chrome返回 //*[@id=“\uuuuuw2\u cEfEsuQ\u列表项目”]/div/div[2]/div/div[1]/div[2]/a[1] 在Chrome控制台中执行此操作将返回 0可以扩展并包含许多子节点(我删除了其中的大部分,因为我在问题中抱怨代码太多),如下所示: 我需要返回和节点的xpath。我在上尝试了不同的变体,但都没有成功。我该怎么