Pessoal estou com um probleminha,
estou fazendo uma app que utiliza o MapView do android, porém eu consigo normalmente jogar a view para exibir o mata do google com GPS, só que ja fiz pesquisas e quebrei a cabeça e não estou conseguindo criar um overlay com um arquivo kml sobreposto ao mapa, pois tenho essa necessidade.
alguem sabe qual melhor caminho para fazer isso.
segue meu codigo:
public class Main extends MapActivity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
MapView mapView = (MapView) findViewById(R.id.map_view);
carregaOverlay(mapView);
/*este codigo exibe o kml, porém não em um Overlay do mapa, e sim em uma tela web onde os usuarios da app podem fazer pesquisas diversar e o mapa pode ser retirado da app
final Intent myIntent = new Intent(android.content.Intent.ACTION_VIEW,
Uri.parse("geo:0,0?q=http://www.cooper-rubi.com.br/mapas/1-Cooper-Rubi.kml"));
myIntent.
startActivity(myIntent);*/
}
private void carregaOverlay(MapView mapView) {
mapView.setClickable(true);
MyLocationOverlay mlo = new MyLocationOverlay(this, mapView);
mlo.enableCompass();
//mlo.isMyLocationEnabled();
// mlo.getMyLocation();
mlo.enableMyLocation();
//mapView.setStreetView(true);
//mapView.setBuiltInZoomControls(true);
MapController mc = mapView.getController();
mc.setZoom(26);
mapView.getOverlays().add(mlo);
}
@Override
protected boolean isRouteDisplayed() {
// TODO Auto-generated method stub
return false;
}
}
se alguem souber outra forma me ajude por favor.
//Tenta assim para ver se da certo…
public class Main extends MapActivity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
MapView mapView = (MapView, findViewById(R.id.map_view);
carregaOverlay(mapView);
/*este codigo exibe o kml, porém não em um Overlay do mapa, e sim em uma tela web onde os usuarios da app podem fazer pesquisas diversar e o mapa pode ser retirado da app
final Intent myIntent = new Intent(android.content.Intent.ACTION_VIEW,
Uri.parse("geo:0,0?q=http://www.cooper-rubi.com.br/mapas/1-Cooper-Rubi.kml"));
myIntent.
startActivity(myIntent);*/
}
private void carregaOverlay(MapView mapView) {
mapView.setClickable(true);
MyLocationOverlay mlo = new MyLocationOverlay(this, mapView);
mlo.enableCompass();
//mlo.isMyLocationEnabled();
// mlo.getMyLocation();
mlo.enableMyLocation();
//mapView.setStreetView(true);
//mapView.setBuiltInZoomControls(true);
MapActivity mc = mapView.getController();
mc.setZoom(26);
mapView.getOverlays().add(mlo);
}
@Override
protected boolean isRouteDisplayed() {
// TODO Auto-generated method stub
return false;
}
}
wellingtonp,
eu consegui fazer exibir o mapa usando o MapView, esse codigo q passei está funcionando normal.
o unico problema que tenho é em colocar sobre a overlay do mapa um arquivo KML, que tenha points e lines, para depois controla-los.
EU também estou com essa mesma dúvida, preciso e muito carregar um mapa a partir de um arquivo .kml.
Pessoal, quem conseguir primeiro posta aqui alguma forma de fazer isso.
crfwilliams , eu estou tentando agora fazer da seguinte maneira.
no arquivo .kml tem o grupo , que é onde ficam as coordenadas do documento.
estou tentando ler o arquivo kml, como se lê um xml, e pegar as coordenadas e ir adicionando através de um for ou while. usando o overlay.
desta forma o mapa sairia pontilhado e praticamente desenhado.
foi o unico jeito que pensei em fazer. estou tentando ainda. não consegui. se vc conseguir primeiro q eu posta aqui.
estou precisando disse com muita urgencia.