2017-02-19 20 views
1

Я использую карту в своем приложении CN1. Для ввода карты в мою форму я использую этот тип:Как создать карту Google в Codename One API?

MapContainer mapContainer = new MapContainer(); 

Мое приложение должно работать только на вкладке IPad. Я могу правильно просматривать карту Google. Но мне нужно стилизовать эту карту. С Javascript я могу это сделать:

var styles = [ 
    { 
     featureType: "administrative.country", 
     elementType: "labels", 
     stylers: [ { color: '#f24547' } ] 
    } 
]; 

map = new google.maps.Map(document.getElementById('map'), { 
    center: navigationData.googlePosition, 
    zoom: 15 
}); 
map.setOptions({ styles: styles }); 

Как я могу сделать то же самое в моем java-коде CN1?

Заранее спасибо.

ответ

1

Вы не можете изменить стили родной Карты Google, как в Codename One, но вы можете установить тип карты, уровень масштабирования, центральное положение и текущее местоположение.

MapContainer mapContainer = new MapContainer(); 
mapContainer.setMapType(MapContainer.MAP_TYPE_HYBRID); 
mapContainer.setShowMyLocation(true); 
LocationManager lm = LocationManager.getLocationManager(); 
Location loc = lm.getLastKnownLocation(); 
if (lm.isGPSDetectionSupported()) { 
    if (lm.isGPSEnabled()) { 
     Location loc2 = lm.getCurrentLocationSync(20000); 
     if (loc2 != null) { 
      loc = loc2; 
     } 
    } else { 
     Dialog.show("", "MyAppName needs access to your current location, please enable GPS in Settings.", "Ok", null); 
    } 
} else { 
    Location loc2 = lm.getCurrentLocationSync(20000); 
    if (loc2 != null) { 
     loc = loc2; 
    } 
} 
mapContainer.zoom(new Coord(loc.getLatitude(), loc.getLongitude()), 15); 
+1

Для полноты я бы также отметить, что вы можете форк [Google Maps Codename Один порт] (https://github.com/codenameone/codenameone-google-maps/) и сделать изменения стиля есть –

 Смежные вопросы

  • Нет связанных вопросов^_^