1

我正在尝试在我的地图上添加地图标记

My code is as below

FrgBufLocation.java

public class FrgBufLocation extends Fragment{

    double dummyLatitude=12.931841;
    double dummyLongitude=77.622236;

    //Constructor declaration on type newInstance
    public static FrgBufLocation newInstance(String _buf_off_id) {
        FrgBufLocation fragment = new FrgBufLocation();

        buf_off_id=_buf_off_id;

        return fragment;
    }


    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        View rootView = inflater.inflate(R.layout.frg_buf_location, container,false);
        setHasOptionsMenu(true);///For using actionbar menu from fragment

         MapView map = (MapView) rootView.findViewById(R.id.map);
          map.getController().setZoom(9);
          map.getController().setCenter(new GeoPoint(dummyLatitude,dummyLongitude));
          map.setBuiltInZoomControls(true);

        return rootView;
    }
}

我得到输出::

在此处输入图像描述

如何获得这样的输出::( We can notice the below image has pinpoint pointed)

在此处输入图像描述

4

2 回答 2

0

使用 POI,以下代码来自 Javascript API,因此语法略有不同。

  var POITruck1038=new MQA.Poi({lat:truckLatitude, lng:truckLongitude});
  map.addShape(POITruck1038);
于 2014-06-16T15:16:02.000 回答
0

您可以像这样绘制标记:

    ... ...
    List<Overlay> mapOverlays = mapView.getOverlays();
    Drawable drawable = this.getResources().getDrawable(R.drawable.marker);

    //myItemlizedOverLay is your customised ItemizedOverlay
    myItemlizedOverLay itemizedoverlay = new myItemlizedOverLay(drawable, this);

    GeoPoint point = new GeoPoint(dummyLatitude,dummyLongitude);            
    OverlayItem overlayitem = new OverlayItem(point, "address_name", "address");

    itemizedoverlay.addOverlay(overlayitem);
    mapOverlays.add(itemizedoverlay);
    map.getController().animateTo(point);
    ... ...

希望这有帮助。

于 2014-06-16T17:39:28.810 回答