Est-ce que quelqu'un a réussi à utiliser ItemizedOverlays
dans Android Beta 0.9? Je ne peux pas le faire fonctionner, mais je ne suis pas sûr si j'ai fait quelque chose de mal ou si cette fonctionnalité n'est pas encore disponible. J'ai essayé d'utiliser les classes ItemizedOverlay
et OverlayItem
. Leur but est de simuler des marqueurs de carte (comme dans Google Maps Mashups) mais j'ai eu des problèmes pour les faire apparaître sur la carte.Utilisation de ItemizedOverlay et OverlayItem dans Android Beta 0.9
Je peux ajouter mes propres superpositions personnalisées en utilisant une technique similaire, c'est juste le ItemizedOverlays
qui ne fonctionne pas. Une fois que j'ai implémenté mon propre ItemizedOverlay
(et remplacé createItem), créer une nouvelle instance de ma classe semble fonctionner (je peux en extraire des OverlayItems) mais l'ajouter à la liste Overlay d'une map ne la fait pas apparaître Comme il se doit.
Ceci est le code que j'utilise pour ajouter la classe ItemizedOverlay
en tant que superposition à mon MapView
.
// Add the ItemizedOverlay to the Map
private void addItemizedOverlay() {
Resources r = getResources();
MapView mapView = (MapView)findViewById(R.id.mymapview);
List<Overlay> overlays = mapView.getOverlays();
MyItemizedOverlay markers = new MyItemizedOverlay(r.getDrawable(R.drawable.icon));
overlays.add(markers);
OverlayItem oi = markers.getItem(0);
markers.setFocus(oi);
mapView.postInvalidate();
}
Où MyItemizedOverlay
est défini comme:
public class MyItemizedOverlay extends ItemizedOverlay<OverlayItem> {
public MyItemizedOverlay(Drawable defaultMarker) {
super(defaultMarker);
populate();
}
@Override
protected OverlayItem createItem(int index) {
Double lat = (index+37.422006)*1E6;
Double lng = -122.084095*1E6;
GeoPoint point = new GeoPoint(lat.intValue(), lng.intValue());
OverlayItem oi = new OverlayItem(point, "Marker", "Marker Text");
return oi;
}
@Override
public int size() {
return 5;
}
}
est-ce juste moi ou votre dernier est vide? – Reno