Я пытаюсь вернуть логическое значение, но возвращаемое значение всегда 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 –
Создайте переменную static. –