Salut à tous


je veux ajouter un markeur de position à ma carte,mais je n'arrive pas à le faire malgre que j'ai ajouter des markeurs de position des sites,mais un markeur pour me localiser nn.

voilà les codes

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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
import java.io.IOException;
import java.util.List;
import java.util.Locale;
 
import com.android.map.HelloItemizedOverlay;
import com.android.map.R;
 
import com.google.android.maps.GeoPoint;
import com.google.android.maps.MapActivity;
import com.google.android.maps.MapController;
import com.google.android.maps.MapView;
import com.google.android.maps.Overlay;
import com.google.android.maps.OverlayItem;
 
import android.app.Activity;
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.graphics.Point;
import android.graphics.drawable.Drawable;
import android.location.Address;
import android.location.Geocoder;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.os.Bundle;
import android.util.Log;
import android.view.KeyEvent;
import android.view.Menu;
import android.view.MotionEvent;
import android.widget.LinearLayout;
import android.widget.TextView;
import android.widget.Toast;
 
public class HelloGoogleMapActivity extends MapActivity implements LocationListener{
 
 
	private MapView    mapView;
	private MapController mc;
	private LocationManager lm;	
	private MotionEvent event;	
	private double      lat = 0;
	private double      lng = 0;
	 LinearLayout linearLayout;
 
	 Location location;
 
 
 
	TextView tv;
	HelloItemizedOverlay itemizedoverlay;
 
    /** Called when the activity is first created. */
	  @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main1);
 
        MapView mapView = (MapView) findViewById(R.id.mapView);
        mapView.setBuiltInZoomControls(true);
 
        //
 
 
        mc = mapView.getController();     
        mc.setZoom(17);
 
 
 
 
 
        List<Overlay> mapOverlays = mapView.getOverlays();
        Drawable drawable = this.getResources().getDrawable(R.drawable.pink);
        HelloItemizedOverlay itemizedoverlay = new HelloItemizedOverlay(drawable,this);
 
 
 
 
 
        GeoPoint point = new GeoPoint((int)(36.854128 * 1E6),(int)(10.334809* 1E6));        
        OverlayItem overlayitem = new OverlayItem(point, "Anthonin de Carthage", "Les thermes d’Antonin, situés à Carthage, sont le plus vaste ensemble thermal romain construit sur le sol africain. Ils constituent aussi le seul bâtiment thermal de Carthage dont il subsiste quelques vestiges, en dépit de la prédation féroce qui a sévi sur le site archéologique et dépouillé le monument de ses matériaux.L’édifice des thermes portant le nom d’Antonin le Pieux est édifié sur le bord de mer, après un grand incendie ayant ravagé la cité au iie siècle. La construction est datée précisément d’une période située entre 145 et 162 ; elle est proche de la plupart des grands édifices de la capitale du proconsul d’Afrique, représentant du pouvoir dans la province, dont il reste quelques vestiges comme l’amphithéâtre, le théâtre et l’odéon...");  
       // mc.setCenter(point); 
        mc.setCenter(point); 
 
        GeoPoint point1 = new GeoPoint((int)(36.853372* 1E6),(int)(10.32423* 1E6));
        OverlayItem overlayitem1 = new OverlayItem(point1, "Musée National de Carthage", "Le musée national de Carthage est un musée archéologique situé sur la colline de Byrsa au cœur de la ville de Carthage.Le musée est fondé en 1875 dans les locaux du séminaire des Pères blancs. Son nom est d’abord Musée Saint-Louis jusqu’en 1899 puis Musée Lavigerie jusqu’en 1956 ; ce dernier nom est celui du fondateur de cet ordre missionnaire, le cardinal Charles Martial Lavigerie2.Il accueille dans un premier temps le produit des fouilles effectuées par les Pères blancs, en particulier celles effectuées par le père Delattre. L’annexe du couvent des Pères blancs était utilisée de prime abord pour recevoir le produit des fouilles des nécropoles du site archéologique : fouilles de la colline Saint-Louis mais aussi de Douimès, de la colline de Junon, de la colline Sainte-Monique et aussi des basiliques chrétiennes carthaginoises... ");
       // mc.setCenter(point1);
 
        GeoPoint point2 = new GeoPoint((int)(36.85248* 1E6),(int)(10.323694* 1E6));
        OverlayItem overlayitem2 = new OverlayItem(point2, "Byrsa","Byrsa, présente dès les premiers jours de la cité punique selon les sources écrites qui nous sont parvenue, a vraisemblablement été le lieu de la citadelle qui fut le dernier réduit lors de la Troisième Guerre punique. A l'époque romaine le lieu fut occupé par de vastes constructions publiques suite à un réaménagement considérable de l'espace naturel qui fut adapté au projet urbanistique. Après un long abandon, le site a été réoccupé sur le plateau sommital par de nouvelles constructions à finalité religieuse, dans le contexte colonial du xixe siècle, principalement une cathédrale et un séminaire des Pères Blancs, dont l'objectif était apostolique et archéologique. Ce séminaire abrita le produit des fouilles effectuées à Carthage et abrite toujours le Musée national de Carthage... ");
        //mc.setCenter(point2);
 
        GeoPoint point3 = new GeoPoint((int)(36.857768* 1E6),(int)(10.329444* 1E6));
        OverlayItem overlayitem3 = new OverlayItem(point3, "Amphithéatre de Carthage", "L'amphithéâtre de Carthage est un amphithéâtre romain construit au premier siècle dans la ville de Carthage, reconstruite par Jules César (Colonia Julia Karthago) et qui devient la capitale de la province romaine d'Afrique. La prédation qui a sévi sur le site archéologique fait que seule subsiste l'arène, alors que l'édifice faisait l'admiration de voyageurs, y compris au Moyen Âge.C'est l'un des trois amphithéâtres africains, avec ceux d'El Jem et de Thapsus, à être construit sur un terrain plat, sans adossement à une colline 1.L'amphithéâtre de Carthage est construit à la fin du premier siècle ou au début du iie siècle, à l'ouest de la colline de Byrsa. Une inscription datée atteste qu'il est en service en 133-139. Il est agrandi au cours du troisième siècle...");
        //mc.setCenter(point3);
 
        GeoPoint point4 = new GeoPoint((int)(36.858128* 1E6),(int)(10.331526* 1E6));
        OverlayItem overlayitem4 = new OverlayItem(point4, "Villas Romaines", "Il s’agit d’un quartier qui regroupe le plus grand nombre de vestiges d’habitations patriciennes mises au jour dans l’antique métropole. Si le tracé, très net et souligné par le trait puissant d’une portion de rue pavée, donne une idée précise de l’aménagement topographique d’une cité romaine, les vestiges subsistants ne donnent qu’une vague idée de l’agrément et du luxe de ces résidences qui s’étageaient en pente douce jusqu’au bord de mer.Une maison, dite « la villa de la volière » , la mieux conservée du site, a été restaurée pour nous restituer un intérieur romain d’Afrique : des chambres précédées d’un préau soutenu par des colonnes autour d’une cour centrale agrémentée d’un jardinet et pavée de mosaïques.De la terrasse, s’offre une superbe vue sur la baie de Tunis...");
        //mc.setCenter(point4);
 
        GeoPoint point5 = new GeoPoint((int)(36.854025* 1E6),(int)(10.323071* 1E6));
        OverlayItem overlayitem5 = new OverlayItem(point5, "Acropolium", "L’Acropolium est une institution culturelle et touristique.Il est installé dans le bâtiment de l'ancienne cathédrale Saint-Louis qui fut construite en 1884.Ce monument se dresse au sommet de la colline de Byrsa, haut lieu de la Carthage punique, sur l'emplacement du capitole romain, là où Didon a fondé Karthadash (la ville nouvelle).L'Acropolium est voisin du Musée archéologique où sont exposées les collections puniques et romaines découvertes sur le site.Ce monument a été restauré et mis en valeur en 1995, dans le cadre du plan d'aménagement culturel et touristique du Parc National Carthage Sidi Bou Saïd.De style byzantin mauresque, il est soutenu de colonnes de marbre aux chapiteaux dorés, de plafonds de bois peint et de vitraux.");
        //mc.setCenter(point5);
 
        GeoPoint point6 = new GeoPoint((int)(35.296379* 1E6),(int)(10.706831* 1E6));
        OverlayItem overlayitem6 = new OverlayItem(point6, "Amphithéâtre d’El Jem", "Troisième amphithéâtre du monde antique (après celui de Rome et de Capoue), le grand amphithéâtre d’El Jem pouvait accueillir 27 mille spectateurs. L’historien Michel Zéraffa écrit : ' Ici, lorsqu’un gladiateur était blessé, la foule devait hurler plus fort qu’à Rome '.L’édifice fut élevée entre la fin du 2ème siècle et le début du 3ème et les pierres qui servirent à sa construction acheminées d’une carrière qui se situait à plus de 30 Km. Son tracé est elliptique, le grand axe mesurant 148 mètres et le périmètre 427 mètres.Bien qu’ébréché, le grand amphithéâtre d’El Jem est l’un des monuments historiques les plus majestueux.");
        //mc.setCenter(point5);
 
 
 
      //  GeoPoint point8 = new GeoPoint((int)(36.843087* 1E6),(int)(10.325539* 1E6));
      //  OverlayItem overlayitem8 = new OverlayItem(point8, "Site archéologique de Carthage"," Fondée dès le IXe siècle av. J.-C. sur le golfe de Tunis, Carthage établit à partir du VIe siècle un empire commercial s'étendant à une grande partie du monde méditerranéen et fut le siège d'une brillante civilisation. Au cours des longues guerres puniques, elle occupa des territoires de Rome, mais celle-ci la détruisit finalement en 146 av. J.-C. Une seconde Carthage, romaine celle-là, fut alors fondée sur ses ruines.");
 
 
 
        itemizedoverlay.addOverlay(overlayitem);
        itemizedoverlay.addOverlay(overlayitem1);
        itemizedoverlay.addOverlay(overlayitem2);
        itemizedoverlay.addOverlay(overlayitem3);
        itemizedoverlay.addOverlay(overlayitem4);
        itemizedoverlay.addOverlay(overlayitem5);
        itemizedoverlay.addOverlay(overlayitem6);
        //itemizedoverlay.addOverlay(overlayitem7);
      //  itemizedoverlay.addOverlay(overlayitem8);
 
 
 
        Drawable drawable1 = this.getResources().getDrawable(R.drawable.pink);
        HelloItemizedOverlay itemizedoverlay1 = new HelloItemizedOverlay(drawable1);
       //lat = location.getLatitude();
		// lng = location.getLongitude();	 
 
		/* GeoPoint p = new GeoPoint((int) (38.854025 * 1E6), (int) (10.323071 * 1E6));
		 OverlayItem overlayitem8 = new OverlayItem(p, "je suis là"," Fondée dès le IXe siècle av. J.-C. sur le golfe de Tunis, Carthage établit à partir du VIe siècle un empire commercial s'étendant à une grande partie du monde méditerranéen et fut le siège d'une brillante civilisation. Au cours des longues guerres puniques, elle occupa des territoires de Rome, mais celle-ci la détruisit finalement en 146 av. J.-C. Une seconde Carthage, romaine celle-là, fut alors fondée sur ses ruines.");
		 itemizedoverlay1.addOverlay(overlayitem8);  
		  mapOverlays.add(itemizedoverlay1);
		  mc.setCenter(p); */
 
        mapOverlays.add(itemizedoverlay);
 
        mapView.setSatellite(true);
 
 
 
        lm = (LocationManager) this.getSystemService(LOCATION_SERVICE);
        lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, 10000, 0, this);
        lm.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 10000, 0, this);
 
 
        mapView.setClickable(true);
 
 
 
    }
 
 
	/*public boolean onTouchEvent(MotionEvent event, MapView mapView) 
    {   
        //---when user lifts his finger---
    	
    	 
        if (event.getActionIndex()== 1) { 
        	
        	
            GeoPoint point = mapView.getProjection().fromPixels((int) event.getX(),(int) event.getY());
                Toast.makeText(getBaseContext(), point.getLatitudeE6() / 1E6 + "," + 
                        point.getLongitudeE6() /1E6  ,Toast.LENGTH_SHORT).show();
        	
        }                            
        return false;
    }*/
 
 
 
 
 
 
 
	@Override
	protected boolean isRouteDisplayed() {
		// TODO Auto-generated method stub
		return false;
	}
 
	@Override
	public boolean onKeyDown(int keyCode, KeyEvent event)
	{
	  if (keyCode == KeyEvent.KEYCODE_S)
	  {
	    mapView.setSatellite(!mapView.isSatellite());
	    return true;
	  }
	  return super.onKeyDown(keyCode, event);
	}
 
	@Override
	public void onLocationChanged(Location location) {
		// TODO Auto-generated method stub
 
		lat = location.getLatitude();
		 lng = location.getLongitude();
		 Toast.makeText(getBaseContext(),
		 "Je suis là",
		 Toast.LENGTH_SHORT).show();
		 GeoPoint p = new GeoPoint((int) (lat * 1E6), (int) (lng * 1E6));
 
 
		 OverlayItem overlayitem9 = new OverlayItem(p, "je suis là", null);
		 Drawable dra = this.getResources().getDrawable(R.drawable.pink);
	        HelloItemizedOverlay itemizedoverlay1 = new HelloItemizedOverlay(dra);
	        List<Overlay> mapOverlays = mapView.getOverlays();
		itemizedoverlay1.addOverlay(overlayitem9);
		 mapOverlays.add(itemizedoverlay1);
	    //    mc.setCenter(p);      
		// mc.animateTo(p);
 
 
	}
 
	@Override
	public void onProviderDisabled(String provider) {
		// TODO Auto-generated method stub
 
		//
		// Log.e("GPS", "provider disabled " + provider);
         //tv = new TextView(this);
         //tv.setText(tv.getText()+"\nprovider disabled " + arg0);
         //setContentView(tv);
 
	}
 
	@Override
	public void onProviderEnabled(String provider) {
		// TODO Auto-generated method stub
 
		// Log.e("GPS", "provider enabled " + provider);
         //tv = new TextView(this);
       //  tv.setText(tv.getText()+"\nprovider enabled " + provider);
         //setContentView(tv);
 
 
 
	}
 
	@Override
	public void onStatusChanged(String provider, int status, Bundle extras) {
		// TODO Auto-generated method stub
 
	}
 
 
 
 
 
}

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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
import java.util.ArrayList;
 
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.graphics.drawable.Drawable;
import android.location.LocationListener;
import android.net.Uri;
import android.os.Bundle;
import android.view.MotionEvent;
import android.widget.TextView;
import android.widget.Toast;
 
import com.google.android.maps.GeoPoint;
import com.google.android.maps.ItemizedOverlay;
import com.google.android.maps.MapView;
import com.google.android.maps.OverlayItem;
 
public class HelloItemizedOverlay extends ItemizedOverlay {
 
	private ArrayList<OverlayItem> mOverlays = new ArrayList<OverlayItem>();
	private Context mContext;
	String hello;
	String titre;
	private Drawable defaultMarker;
 
	public HelloItemizedOverlay(Drawable defaultMarker) {
		super(boundCenterBottom(defaultMarker));
		// TODO Auto-generated constructor stub
	}
 
 
 
	public HelloItemizedOverlay(Drawable defaultMarker, Context context) {
		 // super(defaultMarker);
		super(boundCenterBottom(defaultMarker));
		   mContext = context;
		  // HelloItemizedOverlay itemizedoverlay = new HelloItemizedOverlay(defaultMarker, mContext);
 
		}
 
	@Override
	protected OverlayItem createItem(int i) {
		// TODO Auto-generated method stub
		 return mOverlays.get(i);
	}
 
	@Override
	public int size() {
		// TODO Auto-generated method stub
		return mOverlays.size();
	}
	public void addOverlay(OverlayItem overlay) {
	    mOverlays.add(overlay);
	    populate();
	}
@Override
	protected boolean onTap(int index) {
	  OverlayItem item = mOverlays.get(index);
	  AlertDialog.Builder dialog = new AlertDialog.Builder(mContext);
	  dialog.setTitle(item.getTitle());
	 // dialog.setMessage(item.getSnippet());  
 
	  titre=item.getTitle();
	  hello=item.getSnippet();
 dialog.show();
	  return true;
	}
}

merci de m'aider