我可以得到的价值,而不使用事件侦听器在Android上的Firebase? [英] Can i get value without using event listeners in firebase on android?
问题描述
我正在使用新版Google Firebase实时数据库制作Android应用程序。
当数据改变/添加/删除/移动时,我得到了ValueEventListener和ChildEventListener的数据。 >
我的数据是:
user 1:{
name:abc
}
我有一个名为getName的按钮。
我想在用户1数据中获取name的值,当我点击getName按钮。 / p>
getName.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v ){
bla bla ..
}
});
可能吗?
我可以在不使用监听器的情况下获得价值吗?
我正在等待您的帮助。
谢谢。
是的,您可以使用 addListenerForSingleValueEvent
。与 ValueEventListener
和 ChildEventListener
不同,它只会获取一次值。
所以你的代码看起来就像这样,
$ b $ $ $ $ $ $ $ getName.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
ref.addListenerForSingleValueEvent(new ValueEventListener(){
@Override
public void onDataChange(DataSnapshot snapshot){
//做一些事情
}
@Override
public void onCancelled(FirebaseError firebaseError){
}
});
I'm making an Android application using new version of Google Firebase Realtime Database.
I am getting my datas with ValueEventListener and ChildEventListener when data changed/added/deleted/moved etc..
Now, i have a problem.
My data is :
"user 1": {
"name":"abc"
}
and i have an a Button that named "getName".
I want to get value of "name" in user 1 data when i clicked the getName button.
getName.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
bla bla..
}
});
Is it possible? Can i get value without using listeners?
i m waiting your helps. thank you.
Yes you can do that by using addListenerForSingleValueEvent
. This will fetch the value only once unlike ValueEventListener
and ChildEventListener
.
So your code will look something like this,
getName.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
ref.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot snapshot) {
// do some stuff once
}
@Override
public void onCancelled(FirebaseError firebaseError) {
}
});
这篇关于我可以得到的价值,而不使用事件侦听器在Android上的Firebase?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!