Android için Haritalar SDK'sı, bir haritanın bit eşlem görüntüsünü sunarak kullanıcıya sınırlı etkileşim olanağı sunabilir. Buna basit mod haritası denir.
Kod örnekleri
GitHub'daki ApiDemos deposu, basit modun kullanımını gösteren örnekler içerir:
- LiteDemoActivity - Java: Java'da basit mod haritası kullanmayla ilgili temel bilgiler
- LiteDemoActivity - Kotlin: Kotlin'de basit mod haritasını kullanmayla ilgili temel bilgiler
- LiteListDemoActivity - Java: Java'da basit modu kullanarak ListViews'ta haritaları verimli bir şekilde görüntüleme
- LiteListDemoActivity - Kotlin: Kotlin'de basit modu kullanarak ListViews'ta haritaları verimli şekilde görüntüleme
Basit moda genel bakış
Basit mod haritası, bir haritanın belirli bir konum ve yakınlaştırma düzeyindeki bit eşlem görüntüsüdür. Basit mod, tüm harita türlerini (normal, karma, uydu, arazi) ve tam API'nin sağladığı işlevlerin bir alt kümesini destekler. Basit mod, bir akışta birkaç harita veya anlamlı etkileşimi desteklemeyecek kadar küçük bir harita sunmak istediğinizde kullanışlıdır.
Haritayı görüntüleyen kullanıcılar haritayı yakınlaştıramaz veya kaydıramaz. Haritadaki simgeler, kullanıcıların haritayı Google Haritalar mobil uygulamasında görüntülemesine ve yol tarifi istemesine olanak tanır.
Basit mod haritası ekleme
Basit mod, tam Google Haritalar Android API'si ile aynı sınıfları ve arayüzleri kullanır. Bir GoogleMap
cihazını basit moda şu şekilde ayarlayabilirsiniz:
MapView
veyaMapFragment
için XML özelliği olarak- Veya
GoogleMapOptions
nesnesinde
MapView
veya MapFragment
için XML özelliği olarak
<fragment xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:map="http://schemas.android.com/apk/res-auto"
android:name="com.google.android.gms.maps.MapFragment"
android:id="@+id/map"
android:layout_width="match_parent"
android:layout_height="match_parent"
map:cameraZoom="13"
map:mapType="normal"
map:liteMode="true"/>
GoogleMapOptions
nesnesinde
Kotlin
val options = GoogleMapOptions() .liteMode(true)
Java
GoogleMapOptions options = new GoogleMapOptions() .liteMode(true);
Haritanın başlangıç durumunu ayarlama hakkında ayrıntılı bilgi için harita nesnesi rehberine bakın.
Harita görünümü veya yol tarifi isteği başlatma amaçları
Haritanın sağ alt kısmındaki bir araç çubuğu, varsayılan olarak Google Haritalar mobil uygulamasındaki harita görünümüne veya yol tarifi isteğine erişim sağlayan simgeler içerir. UiSettings.setMapToolbarEnabled(false)
numaralı telefonu arayarak araç çubuğunu devre dışı bırakabilirsiniz. Daha fazla ayrıntı için araç çubuğu dokümanlarına bakın.
Ayrıca, bir kullanıcı haritaya dokunduğunda API, varsayılan olarak Google Haritalar mobil uygulamasını başlatır. Kendi dinleyicinizi ayarlamak için GoogleMap.setOnMapClickListener()
kullanarak bunu geçersiz kılabilirsiniz. MapView
veya MapFragment
öğesini içeren görünümde setClickable()
öğesini çağırarak haritadaki tıklama etkinliklerini de devre dışı bırakabilirsiniz. Bu iki teknikle ilgili ayrıntılar için etkinlikler belgelerine bakın.
Yaşam döngüsü etkinlikleri
API'yi tamamen etkileşimli modda kullanırken, MapView
sınıfının kullanıcıları tüm etkinlik yaşam döngüsü yöntemlerini MapView
sınıfındaki ilgili yöntemlere yönlendirmelidir. Yaşam döngüsü yöntemlerine örnek olarak şunlar verilebilir: onCreate()
, onDestroy()
, onResume()
ve onPause()
.
MapView
sınıfını basit modda kullanırken aşağıdaki durumlar haricinde yönlendirme yaşam döngüsü olayları isteğe bağlıdır:
onCreate()
yönteminin çağrılması zorunludur, aksi takdirde harita görünmez.- Basit mod haritanızda Konumum noktasını göstermek ve varsayılan konum kaynağını kullanmak
istiyorsanız konum kaynağı yalnızca bu çağrılar arasında güncelleneceği için
onResume()
veonPause()
çağrılarını yapmanız gerekir. Kendi konum kaynağınızı kullanıyorsanız bu iki yöntemi çağırmanız gerekmez.
Desteklenen API özellikleri
Aşağıdaki tabloda, basit mod haritasının API işlevlerinin her bir alanı için davranışı açıklanmaktadır. Bir uygulama, basit modda desteklenmeyen bir yöntemi çağırırsa API bir uyarı mesajı günlüğe kaydeder.
İşlevler | |
---|---|
Harita türleri | Destekleniyor mu? Evet
GoogleMapOptions.mapType() ve GoogleMap.setMapType() üzerinden şu harita türleri kullanılabilir: MAP_TYPE_NORMAL , MAP_TYPE_SATELLITE , MAP_TYPE_TERRAIN , MAP_TYPE_HYBRID , MAP_TYPE_NONE |
Çoklu çizgiler, poligonlar, daireler | Destekleniyor mu? Evet
Şekiller için basit mod işlevi tam API ile eşleşir. |
Projeksiyon | Destekleniyor mu? Evet
Projeksiyon için basit mod işlevi, tam API ile eşleşir. |
Konumum | Destekleniyor mu? Evet
Konumum katmanının basit mod işlevi tam API ile eşleşir. |
Harita dolgusu | Destekleniyor mu? Evet
Eşleme dolgusu için basit mod desteği tam API ile eşleşir. |
Bilgi pencereleri | Destekleniyor mu? Evet
Bir işaretçinin title() değerini ayarlarsanız kullanıcı işaretçiye dokunduğunda varsayılan
bilgi penceresi görünür. İşaretçide showInfoWindow() yöntemini çağırarak bilgi penceresini programatik olarak gösterebilirsiniz.
InfoWindowAdapter arayüzü aracılığıyla özel bilgi pencereleri de oluşturabilirsiniz. |
Özel temel harita stilleri | Destekleniyor mu? Kısmen
Android için Haritalar SDK'sı, temel haritanın özel stilini destekler. Basit Mod yalnızca JSON tabanlı özel stilleri destekler, stilize edilmiş bir harita oluşturmak için harita kimliği gerektiren bulut tabanlı stilleri desteklemez.
Basit mod, koyu modu kullanmak için harita renk şemasını ayarlamayı da desteklemez.
|
İşaretçiler | Destekleniyor mu? Kısmen
İşaretçi ekleyebilir
ve bir tıklama etkinliğine yanıt verebilirsiniz. Özel işaretçi simgeleri de ekleyebilirsiniz. Bir işaretçiyi sürüklenebilir hale getirmek mümkün değildir. Basit mod haritasındaki işaretçiler düzdür ve döndürülemez. |
Kamera konumu, yakınlaştırma ve animasyon | Destekleniyor mu? Kısmen
Kamera hedefini ve yakınlaştırmayı ayarlayabilirsiniz, ancak yatırmayı veya yönü değiştiremezsiniz.
Basit modda yakınlaştırma düzeyi en yakın tam sayıya yuvarlanır.
|
Etkinlikleri eşleştirme | Destekleniyor mu? Kısmen
Basit mod,
Basit modda bir haritadaki tıklama etkinliklerini devre dışı bırakmak için Ayrıntılar için etkinlikler belgelerine bakın. |
İç mekan haritaları ve binaları | Destekleniyor mu? Hayır
Basit mod, Haritalar Statik API ile aynı blokları gösterir.
Bu, iç mekan kat planı varsayılan karoya eklenmişse görüneceği anlamına gelir. Aksi takdirde kazanamaz. Ayrıca, gösterilen seviyeyi değiştiremez veya seviye seçiciyi değiştiremezsiniz. |
Trafik katmanı | Destekleniyor mu? Hayır
GoogleMap.setTrafficEnabled() , basit modda desteklenmez. |
Zemin bindirme | Destekleniyor mu? Hayır
GoogleMap.addGroundOverlay() , basit modda desteklenmez. |
Yer paylaşımlı karo | Destekleniyor mu? Hayır
GoogleMap.addTileOverlay() , basit modda desteklenmez. |
Hareketler | Destekleniyor mu? Hayır
Basit mod, hareketleri desteklemez. Hareketleri etkinleştirmenin ve devre dışı bırakmanın
herhangi bir etkisi olmaz. |
Street View | Destekleniyor mu? Hayır
Street View
basit modda desteklenmez. |