我想返回一個布爾值,但返回的值總是爲false,即在這種情況下爲0。valueEventListener的返回值java
校驗變量是一個實例變量,並且當按鈕被按下時的功能下面獲取調用。
private boolean checkAnswerSubmission() {
DatabaseReference answerDatabase = FirebaseDatabase.getInstance().getReference().child("userPuzzleHistory").child(uid);
answerDatabase.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
if (dataSnapshot.hasChild(String.valueOf(imagename))) {
check = 1;
} else {
check = 0;
}
//here the value check is working fine but the value cannot be returned from here.
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
//here the value returned is always 0
if (check == 1)
return true;
else
return false;
}
Java沒有全局變量。 – shmosel
我的不好。已經做出了改變..任何幫助將是偉大的@shmosel –
創建您的變量靜態。 –