// provar con un dispositivo // se llama en una actualizacion de la localizacion public void onLocationChanged(Location l) { // TODO Auto-generated method stub lat = (int) l.getLatitude(); lon = (int) l.getLongitude(); // se crea un nuevo punto y se coloca en la lista de Overlyas con la localizacion actual GeoPoint ourLocation = new GeoPoint(lat, lon); OverlayItem overlayItem = new OverlayItem(ourLocation, "what's up", "2nd string"); CustonPinpoint custom = new CustonPinpoint(d, MainActivity.this); custom.insertPinpoint(overlayItem); oveList.add(custom); }
@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_maps); map = (MapView) findViewById(R.id.mvMain); map.setBuiltInZoomControls(true); Touchy t = new Touchy(); // Overlay para detectar toques en lapantalla oveList = map.getOverlays(); // obtiene todos los overlays que se dibujan en el mapa oveList.add(t); // agrega nuestro overlay de ultimo en la lista compass = new MyLocationOverlay( MainActivity.this, map); // se crea un nuevo Overlay de la localizacion actual oveList.add(compass); // se agrega el overlay de la localizacion controller = map.getController(); // se obtinenen los controles del mapa GeoPoint point = new GeoPoint(51643234, 7848593); // se crea un nuevo Geopoint controller.animateTo(point); // se indica a los controles que nos lleven al punto indicado controller.setZoom(6); // se hace un zoon de nivel 6 d = getResources() .getDrawable( R.drawable.ic_launcher); // se crea un objeto dibujable por medio de un recurso // placing pintpoint at location lm = (LocationManager) getSystemService(Context.LOCATION_SERVICE); // manager para la localizacion GPS Criteria crit = new Criteria(); // un objeto criterio que maneja el mejor criterio de selleccion del // provider towers = lm.getBestProvider(crit, false); // se obtiene un proveedor de localizacion Location location = lm.getLastKnownLocation(towers); // se obtine la localizacion del provedor seleccionado // si hay una localizacion if (location != null) { lat = (int) location.getLatitude(); // se obtiene la lat y long lon = (int) location.getLongitude(); GeoPoint ourLocation = new GeoPoint(lat, lon); // se crea un nuevo punto // se crea un overlay para mostrar un dibujo en el punto indicado por la lat y lon OverlayItem overlayItem = new OverlayItem(ourLocation, "what's up", "2nd string"); CustonPinpoint custom = new CustonPinpoint( d, MainActivity.this); // se crea un punto personal con el objeto dibujable custom.insertPinpoint(overlayItem); // se le dan los datos de la posicion en el mapa oveList.add(custom); // se agrega el punto en la lista de overlays } else { // cuando todo se va al carajo Toast.makeText(MainActivity.this, "no se puede encontrar un provider", Toast.LENGTH_LONG) .show(); } }