Bonjour a tous,

Je suis en train de me faire une petite appli avec googleMap qui, lorsqu'on clique sur un point sur la map(ItemizedOverlay) nous renvoi des infos, et apres j'aimerai lancé une activity concernant ce point.

Donc pour toute la partie creation map, creation point, affichage point, clic point, affichage dialog je suis OK
Mon souci, c'est une fois que je suis dans le onTap de ma class "ListItemizedOverlay extends ItemizedOverlay" ... Je ne sais pas comment faire pour appeler une activity et lui passer des paramètres.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
 
 
public class ListItimizedOverlay extends ItemizedOverlay  {
	private ArrayList<OverlayItem>  arrayListOverlayItem = new ArrayList<OverlayItem>();
	private static  Context context;
    private Location location;
 
    public void setMyLocation(GeoPoint myLocation)
    {
 
        location = new Location("myLocation");
        location.setLatitude(myLocation.getLatitudeE6() * 1E-6);
        location.setLongitude(myLocation.getLongitudeE6() * 1E-6);
    }
 
	@Override
	protected boolean onTap(int index)
	{
	 OverlayItem item = arrayListOverlayItem.get(index);
	AlertDialog.Builder dialog = new AlertDialog.Builder(context);
	dialog.setTitle(item.getTitle());
	dialog.setMessage(item.getSnippet());
	final String UId = item.getTitle();
	dialog.setPositiveButton("Lancer activite", new DialogInterface.OnClickListener() {
	        public void onClick(DialogInterface dialog, int which) {
Toast.makeText(ListItimizedOverlay.context,"Ici j'aimerai afficher une nouvelle activite ", Toast.LENGTH_SHORT).show();
return;
	      } });
	dialog.setNegativeButton("Photographier", new DialogInterface.OnClickListener() {
	        public void onClick(DialogInterface dialog, int which) {
            	Toast.makeText(ListItimizedOverlay.context,"Photographie impossible pas encore implementée", Toast.LENGTH_SHORT).show();
	        return;
	      } });
	dialog.show();
 
	return true;
}
 
public ListItimizedOverlay(Drawable defaultMarker, Context pContext)
	{
		super(boundCenterBottom(defaultMarker));
		this.context = pContext;
	}
 
 
	@Override
	protected OverlayItem createItem(int i) {
		// TODO Auto-generated method stub
		return arrayListOverlayItem.get(i);
	}
 
	@Override
	public int size() {
		// TODO Auto-generated method stub
		return arrayListOverlayItem.size();
	}
J'ai tenté diverse chose en lieu et place de mon Toast, comme l'appel d'une fonction, qui elle meme appelerait mon startactivityforresult
Seulement, cette fonction n'est pas declarée pour la classe ItemizedOverlay...
J'ai tenté de passer des parametres lors de la creation de mon ItemizedOverlay (comme je le fais pour le context) pour lui indiquer qui est l'activity principale, mais impossible.

Bref, tout aide sera la bienvenue