Kwdityas:
Cadena que estoy recibiendo de snapshot.getKey (); es diferente de cualquier otra cadena, aunque no estoy haciendo push () si i prácticamente comparar los valores de mi mAuth.getUid (); cadena y snapshot.getKey (); ambos son iguales, pero mediante programación no está mostrando. Probé mi concatinating snapshot.getKey (); cadena en textView.setText (snapshot.getKey ();); También, pero no se muestra nada en la pantalla.
Tenga en cuenta que no estoy publicando mi código Fragmento conjunto.
En el código de abajo si la declaración no es conseguir verdadero valor.
FirebaseUser mAuth = FirebaseAuth.getInstance().getCurrentUser();
FirebaseDatabase database = FirebaseDatabase.getInstance();
DatabaseReference databaseReference = database.getReference();
DatabaseReference userref = databaseReference.child("Votes").child("Chat");
final HashMap<String, String> hash = new HashMap<>();
likeButton = (ImageView) view.findViewById(R.id.heartImage);
likeButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
hash.put("chatVoteLike", "Yes, I would like it");
userref.child(mAuth.getUid()).setValue(hash);
likeButton.setImageResource(R.drawable.red_heart);
}
});
userref.orderByKey().addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for (DataSnapshot snapshot : dataSnapshot.getChildren()){
String uID = snapshot.getKey();
Log.i("uId from", "firebase ---" + uID);
if (uID == mAuth.getUid()){
likeButton.setImageResource(R.drawable.red_heart);
}
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
Kwdityas:
El problema se resuelve mediante el uso uID.equals(mAuth.getUid())
en lugar deuID == mAuth.getUid()