Question

J'ai une méthode dans une classe client qui recueille des données à partir d'un serveur, et retourne un HashMap. Je veux la liste des clés dans une boîte de dialogue Android. L'API Android exige que les données doivent être sous la forme d'un CharSequence []. Pour autant que je peux dire, il n'y a aucun moyen direct pour convertir ces types de données. Quelle serait la meilleure façon d'y arriver?

Voici la déclaration et l'initialisation du hashmap et keyset:

Map <String, String> players = client.listPlayers();
Set<String> player_names = players.keySet();

Et voici le lien vers la documentation de dialogue Android.

Remarque: CharSequence, qui peut être coulé à partir d'un ensemble n'est pas la même chose que CharSequence []

Toute aide est appréciée.

-Sean W.

Était-ce utile?

La solution

CharSequence[] player_names = players.keySet().toArray(new CharSequence[0]);

Cela signifie que le procédé du type de réseau sans allouer de l'espace pour les éléments. Il attribuera un tableau de taille correcte pour vous.

Si vous préférez affecter le tableau réel vous:

CharSequence[] player_names = players.keySet().toArray(new CharSequence[players.size()]);
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top