我想设置这个名为 userName 的变量,它应该在 ValueEventListener 中获得一个新值。但是,在函数内部设置新值时,它不会改变。输出仍然是“”
private fun getName(){
var userName = ""
val user = fbAuth.currentUser
var uid = user!!.uid
mDatabase = FirebaseDatabase.getInstance().getReference("users")
mDatabase.addValueEventListener(object : ValueEventListener {
override fun onCancelled(p0: DatabaseError) {
TODO("not implemented")
}
override fun onDataChange(snapshot: DataSnapshot) {
userName = snapshot.child(uid).child("name").getValue().toString()
}
})
println(userName)
}
预期输出:John(name child 的值),当前输出:“”
侃侃无极
慕森卡
哈士奇WWW
相关分类