Encontre se existe um filho dentro dos dados filho ou não o Android Firebase
Esta pode ser uma pergunta duplicada, mas tenho muitas tentativas, mas não obtive o resultado, aqui está minha estrutura do firebase
Atualizad
Preciso descobrir se a criança despesasName (Por exemplo, pode seróle) existe não está no nó inteiro de November_2018 (Dentro da caixa vermelha). Se existir, preciso exibir o brinde
Abaixo é o código que eu tentei:
//Here monthyr is the November_2018
expensesaddref = databaseReference.child(username).child("Expense_Month").child(monthyr);
//Variable expensesname is the variable that i want to checked for existent
expensesaddref.orderByChild("expensesName").equalTo(expensesname).addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
for (DataSnapshot ds : dataSnapshot.getChildren()) {
Log.d("List Exp","1 loop");
for(DataSnapshot data : ds.getChildren()){
Log.d("List Exp","2 loop");
if(data.child("expensesName").exists()){
Log.d("List Exp","if loop");
Toast.makeText(getContext(), "exist", Toast.LENGTH_SHORT).show();
}else
{
Log.d("List Exp","else loop");
Toast.makeText(getContext(), "not exist", Toast.LENGTH_SHORT).show();
}
}
}
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
Eu não sei onde iam errado e ele exibeNot Exist Toast
sempre, mas a base do fogo tem esse valor
ConformePradyumanDixit Answer Atualizei o código, mas ainda não está funcionando
//Here monthyr is the November_2018
expensesaddref = databaseReference.child(username).child("Expense_Month").child(monthyr);
expensesaddref.orderByChild("expensesName").equalTo("oil").addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
if(dataSnapshot.exists()){
Toast.makeText(getContext(), "Exist", Toast.LENGTH_SHORT).show();
}else
Toast.makeText(getContext(), "not", Toast.LENGTH_SHORT).show();
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});