java - 从 firebase 实时数据库读取数据到 TextView

标签 java android firebase-realtime-database

我想从 firebase 实时数据库中读取并在 TextView 中设置检索到的数据,这是我到目前为止所尝试过的。

     private DatabaseReference buckybarnz;
 .........
buckybarnz =  FirebaseDatabase.getInstance().getReference().child(userID).child("chel_sea");
  ValueEventListener eventListener = buckybarnz.addValueEventListener(new ValueEventListener() {
 @Override
 public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
for (DataSnapshot dataSnapshot1 : dataSnapshot.getChildren()) {
    if (dataSnapshot1 != null) {
        DRive dRive = dataSnapshot1.getValue(DRive.class);
        if (dRive != null) {
            String receipt = dRive.getExt_ref().trim();
            String text = dRive.getTxt_Ref().trim();

            chalwe.setText(text);
            johns.setText(receipt);

        } else {
            String a = "no pending refunds available";
            anthony.setText(a);
            chalwe.setText(a);
            johns.setText(a);
        }
    } else {
            String a = "no pending refunds available";
            anthony.setText(a);
            chalwe.setText(a);
            johns.setText(a);
}
}

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

}
});

没有任何工作,即使数据库中有数据, TextView 也没有任何反应。

请帮忙,解决这个问题的最佳方法是什么,即使是使用字符串类方法的解决方案也是有益的。下面是我的数据库的 View this is a view of my database, BSQ.... being the userID ] 1

最佳答案

与您相比,我访问数据库的方式不同:

Firebase.setAndroidContext(this);
       Firebase reference1 = new Firebase("https://project-id.firebaseio.com/messages/");  //replace project-id by your project-id
            reference1.addChildEventListener(new ChildEventListener() {
            @Override
            public void onChildAdded(DataSnapshot dataSnapshot, String s) {

                System.out.println("reference4: data snapshot key"+dataSnapshot.getKey()+"");

                //your code
            }

            @Override
            public void onChildChanged(DataSnapshot dataSnapshot, String s) {

            }

            @Override
            public void onChildRemoved(DataSnapshot dataSnapshot) {

            }

            @Override
            public void onChildMoved(DataSnapshot dataSnapshot, String s) {

            }

            @Override
            public void onCancelled(FirebaseError firebaseError) {

            }
        });

希望对你有帮助

关于java - 从 firebase 实时数据库读取数据到 TextView ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58331575/

相关文章:

java - 如何在 Tomcat 和 JavaScript 中的开发和测试服务器之间切换?

android - Recyclerview 将 ID 从数组传递到另一个 Activity onClick 返回随机 id

ios - 如何使用 Swift 在 Firebase 数据库中设置多个值?

android - 在 android 中使用 scribe 的 Twitter 代码问题

android - NFC 阅读器可以从手机读取 IMEI 吗?

ios - 从 Firebase 设置用户值

android - 从 Firebase 实时数据库 Android 查询嵌套数据

java - 堆栈扩展 vector

java - 为什么 "long var = System.nanoTime()"和 "System.nanoTime()"的使用时间如此不同?

java - 带有事件的警报对话框错误