Bom dia Pessoal!
Contexto:
Tenho uma tela de cadastro que carrega uma imagem do celular e faz upload para o storage(firebase) e salva os dados no database(firebase), juntamente com a url da foto.
Ex:
Tenho outra tela onde exibo a lista das pessoas cadastradas com seus dados em um ListView(Customizado).
Ex:
No Banco de Dados, fica assim:
E pra pegar os dados do banco eu faço:
StorageReference dbContatos = FirebaseDatabase.getInstance().getReference().child("contatos");
@Override
protected void onStart() {
super.onStart();
dbContatos.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
contatos.clear();
for (DataSnapshot postSnapshot : dataSnapshot.getChildren()) {
Contato c = postSnapshot.getValue(Contato.class);
Log.i("URL FOTO", c.getContatoUrlFoto());
contatos.add(c);
}
ContatoAdapter contatoAdapter = new ContatoAdapter(VisualizarActivity.this, contatos);
listViewContatos.setAdapter(contatoAdapter);
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
Até ai beleza!, chega tudo direitinho, conforme eu solicitei
Lá no ContatoAdapter eu recebo e utilizo o Picasso pra pegar essa imagem.
@Override
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater inflater = context.getLayoutInflater();
View listViewItem = inflater.inflate(R.layout.item_lista, null, true);
ImageView imgItemFoto = (ImageView) listViewItem.findViewById(R.id.imgItemFoto);
TextView txtItemNome = (TextView) listViewItem.findViewById(R.id.txtItemNome);
TextView txtItemIdade = (TextView) listViewItem.findViewById(R.id.txtItemIdade);
Contato c = contatos.get(position);
Log.i("URL FOTO ADAPTER", c.getContatoUrlFoto());
Picasso.with(context).load(c.getContatoUrlFoto())
.resize(100, 100)
.centerCrop()
.into(imgItemFoto);
txtItemNome.setText(c.getContatoNome());
txtItemIdade.setText(c.getContatoIdade());
return listViewItem;
}
Problema:
Não está trazendo as imagens…
Alguma ideia de como posso resolver isso?
Desde já agradeço a atenção!