Sólo me preguntaba si no hay un estándar predeterminados/superposición/marcador que puedo usar en el MAPVIEW?

He estado buscando en la web y todos los tutoriales hablar acerca de la ampliación de la plantilla y poner tu imagen personalizada.

Hay una forma más fácil? Solo quiero tener un marcador, nada de lujo.

Que respecta a

James

OriginalEl autor James Lin | 2010-08-31

2 Comentarios

  1. 2

    Si usted está usando Eclipse como IDE, puede agregar una .png, por ejemplo, a su /dibujable-ipap, /dibujable-ldpi, /dibujable-mdpi directorios. A continuación, puede colocar y obtener una lista de referencias a su superposiciones algo como esto:

    package com.practice.mapper;
    import java.util.ArrayList;
    import android.graphics.drawable.Drawable;
    import com.google.android.maps.ItemizedOverlay;
    import com.google.android.maps.OverlayItem;
    public class Itemization extends ItemizedOverlay<OverlayItem> {
    private ArrayList<OverlayItem> mOverlays = new ArrayList<OverlayItem>();
    public Itemization(Drawable defaultMarker) {
    super(boundCenterBottom(defaultMarker));
    //super(defaultMarker);
    }
    @Override
    protected OverlayItem createItem(int i) {
    return mOverlays.get(i);
    }
    public void addOverlay(OverlayItem overlay) {
    mOverlays.add(overlay);
    populate();
    }
    @Override
    public int size() {
    return mOverlays.size();
    }
    }
    package com.practice.mapper;
    import java.util.List;
    import com.google.android.maps.GeoPoint;
    import com.google.android.maps.MapActivity;
    import com.google.android.maps.MapView;
    import com.google.android.maps.Overlay;
    import com.google.android.maps.OverlayItem;
    import android.content.Context;
    import android.graphics.drawable.Drawable;
    import android.location.Location;
    import android.location.LocationListener;
    import android.location.LocationManager;
    import android.location.LocationProvider;
    import android.os.Bundle;
    import android.util.Log;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Button;
    import android.widget.LinearLayout;
    import android.widget.ZoomControls;
    public class Mapper extends MapActivity implements LocationListener {
    Location presentLocation;
    ZoomControls z;
    LinearLayout linearLayout;
    MapView mapView;
    List<Overlay> mapOverlays;
    Drawable drawable;
    Itemization itemizedOverlay;
    @Override
    public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    mapView = (MapView) findViewById(R.id.mapview);
    mapView.setBuiltInZoomControls(true);
    mapOverlays = mapView.getOverlays();
    drawable = this.getResources().getDrawable(R.drawable.androidmarker);
    itemizedOverlay = new Itemization(drawable);
    GeoPoint point = new GeoPoint(19240000, -99120000);
    OverlayItem overlayitem = new OverlayItem(point, "", "");
    itemizedOverlay.addOverlay(overlayitem);
    GeoPoint point2 = new GeoPoint(35410000, 139460000);
    OverlayItem overlayitem2 = new OverlayItem(point2, "", "");
    itemizedOverlay.addOverlay(overlayitem2);
    mapOverlays.add(itemizedOverlay);
    }
    public void btnUpdateClicked(View v) {
    LocationManager lm = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
    LocationProvider p = lm.getProvider(LocationManager.GPS_PROVIDER);
    lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, 20000, 1, this);
    List<String> enabledProv = lm.getProviders(true);
    Location l1 = lm.getLastKnownLocation(LocationManager.GPS_PROVIDER);
    Location l2 = lm.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);
    Location l3 = lm.getLastKnownLocation(LocationManager.PASSIVE_PROVIDER);
    Button b = new Button(this.getApplicationContext());
    b.setOnClickListener(new OnClickListener(){
    public void onClick(View v) {
    }});
    lm.toString();
    }
    @Override
    protected boolean isRouteDisplayed() {
    return false;
    }
    public void onLocationChanged(Location location) {
    presentLocation = location;
    Log.d("TEST", "New location received");
    }
    public void onProviderDisabled(String provider) {
    }
    public void onProviderEnabled(String provider) {
    }
    public void onStatusChanged(String provider, int status, Bundle extras) {
    }
    }

    Tengo la mayor parte de este código de un tutorial que ya no puedo encontrar el link. Las superposiciones son muy fáciles de manipular. Espero que esto ayude.

    Hola, gracias por tu sugerencia, pero lo que estoy buscando es si hay un defecto marcador de usar, similar a GMarker en el mapa de google API de js.
    Ah, ya veo. Mi sugerencia entonces es que se ahorra problemas y copiar el marcador directamente a partir de imágenes de Google. El resultado final es el mismo. También, «de forma predeterminada, se utiliza G_DEFAULT_ICON, aunque puede especificar un icono personalizado. El GMarker constructor toma un GLatLng y una opcional GMarkerOptions objetos como argumentos.» de code.google.com/apis/maps/documentation/javascript/v2/…

    OriginalEl autor Alex

  2. 0

    Si usted está utilizando Google Maps Android API v2, puede utilizar el siguiente método.

    mapView.getMap().addMarker(new MarkerOptions()
    .position(new LatLng(10, 10))
    .title("Hello world"));

    OriginalEl autor jeilsoft

Dejar respuesta

Please enter your comment!
Please enter your name here