Строка, которую я получаю из snapshot.getKey ();отличается от любой другой String, хотя я не делаю push (), если я фактически сравниваю значения моего mAuth.getUid ();string и snapshot.getKey ();они оба одинаковы, но программно это не показывает.Я попытался объединить мой снимок.getKey ();строка в textView.setText (snapshot.getKey (););также, но на экране ничего не отображается.
Обратите внимание, что я не публикую весь код фрагмента.
В приведенном ниже коде оператор if не получает истинное значение.
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) {
}
});
![my database structure image below](https://i.stack.imgur.com/QiKm1.png)