Android + Firebase,来自数据库的getValue并填充viewText字段

时间:2016-10-26 09:30:39

标签: java android firebase firebase-realtime-database

所以...感谢TomiQsrd的一些帮助,我将我的数据保存在Firebase中,如下所示:

    private void saveUserInformation(){
    String name = editTextName.getText().toString().trim();
    String address = editTextAddress.getText().toString().trim();

    FirebaseUser user = firebaseAuth.getCurrentUser();

    databaseReference.child(user.getUid()).child("Name").setValue(name);
    databaseReference.child(user.getUid()).child("Address").setValue(address);

    Toast.makeText(this, "Information Saved...", Toast.LENGTH_SHORT).show();
}

我项目的其余部分已基本完成,但无论我观看/阅读了多少教程,我都有最后一部分我无法弄清楚。

如何让事件监听器获取数据中的更改并更新TextView字段。

例如。作为测试,我想在editTextName中更新名称时向页面添加textViewName字段以进行更新

我尝试了各种各样的方法,但必须已经接近,但我无法让它发挥作用。

1 个答案:

答案 0 :(得分:0)

请参阅https://firebase.google.com/docs/database/android/read-and-write

从那里修改:

databaseReference.child(user.getUid()).child("Name").addValueEventListener(new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot snapshot) {
      String name = snapshot.getValue(String.class);
      myTextView.setText(name);
    }

    @Override
    public void onCancelled(DatabaseError databaseError) {
        // Getting Post failed, log a message
        Log.w(TAG, "loadPost:onCancelled", databaseError.toException());
        // ...
    }
};