Obtendo cadeia diferente de snapshot.getKey (); e mAuth.getUid (); Sem .push ();

Kwdityas:

Cordas que estou recebendo a partir snapshot.getKey (); é diferente de qualquer outro String, embora eu não estou fazendo push () se eu praticamente comparar os valores de minha mAuth.getUid (); corda e snapshot.getKey (); ambos são os mesmos, mas por meio de programação não está mostrando. Tentei concatinating minha snapshot.getKey (); string no textView.setText (snapshot.getKey ();); também, mas nada é mostrado na tela.

Por favor note que eu não estou postando meu código Fragmento todo.

No código abaixo a instrução if não está recebendo verdadeiro 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) {

        }
    });

minha imagem estrutura de banco de dados abaixo

Kwdityas:

O problema é resolvido usando usando uID.equals(mAuth.getUid())em vez deuID == mAuth.getUid()

Acho que você gosta

Origin http://43.154.161.224:23101/article/api/json?id=235107&siteId=1
Recomendado
Clasificación