首页 > 解决方案 > 只取第一个 hashmap 值

问题描述

我有一个哈希图,我在 firebase 中注册了三张照片。现在我只需要从节点获取第一张照片以放入适配器的 ImageView 中。但它似乎是随机出现的。地籍图.java

private HashMap<String, Object> fotosSelecionadas = new HashMap<>();
fotosSelecionadas.put(foto.getIdFoto(), foto);
pet.setFotos(fotosSelecionadas);
pet.salvar();

适配器.java

HashMap<String, Object> urlFotos = pet.getFotos();
Object firstValue = urlFotos.values().iterator().next();
Picasso.get().load(String.valueOf(firstValue)).into(holder.foto);

实时数据库

fotos
-MiLS77rQlWEEoZKeBfm
idFoto:"-MiLS77rQlWEEoZKeBfm"
urlFoto:"https://firebasestorage.googleapis.com/v0/b/enc..."
-MiLS78o9Nagri_mR7WL
idFoto:"-MiLS78o9Nagri_mR7WL"
urlFoto:"https://firebasestorage.googleapis.com/v0/b/enc..."
-MiLS79mdjV2JGFRWI0O
idFoto:"-MiLS79mdjV2JGFRWI0O"
urlFoto: 
"https://firebasestorage.googleapis.com/v0/b/enc..."

标签: javaandroid

解决方案


也许你可以使用Java String class substring() method.

IIUC,你想得到字符串https://firebasestorage.googleapis.com/v0/b/encontre-seu-pet-5f9bd.appspot.com/o/imagens%2Fpets%2F-MiF1htaqk2dztzB3v1U%2F-MiF1huwXv3f7H3LZ3bT?alt=media&token=97a9c87e-c875-4e6a-bc70-f7f656d40a50吗?

  • =获取和的第一个字符索引}
  • String.substring(** ='s_index ** , ** }'s_index + 1 **)

推荐阅读