急~android 程序里怎么给地图里加marker
如题,怎么才能给搜索到得点加上标记呢,网页里的会,不过在android里似乎不一样呢,谢谢啦
[解决办法]
给出源码:(你自己照着做了)
package com.android.MapView;
import java.util.*;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.graphics.Canvas;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.widget.Toast;
import com.android.CommSocket.*;
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 SitesOverlay extends ItemizedOverlay {
private List items = new ArrayList();
private Drawable marker = null;
private MapViewActivity ref;
public SitesOverlay(Drawable marker,MapViewActivity r) {
super(marker);
this.marker = marker;
this.ref=r;
}
public void addOverlay(Double lat,Double lng ,String name,String info)
{
GeoPoint point = new GeoPoint(lat.intValue(), lng.intValue());
items.add(new OverlayItem(point, name, info));
populate();
}
@Override
protected OverlayItem createItem(int i) {
return (OverlayItem) (items.get(i));
}
@Override
public void draw(Canvas canvas, MapView mapView, boolean shadow) {
super.draw(canvas, mapView, shadow);
boundCenterBottom(marker);
}
public int size() {
return (items.size());
}
}
调用方法:
SitesOverlay o = new SitesOverlay(marker, this);
o.addOverlay(site.getLat(), site.getLng(), site.getId(), site.getContent());
mapView = (MapView) findViewById(R.id.map);
mapView.invalidate();
坐着等分了~~