Android için Haritalar SDK'sını kullanarak, haritada yerleşik kullanıcı arayüzü bileşenlerinden hangilerinin görüneceğini ve hangi hareketlere izin verildiğini belirleyerek kullanıcıların haritanızla etkileşimde bulunma şeklini özelleştirebilirsiniz.
Kod örnekleri
GitHub'daki ApiDemos deposu, kontrol ve hareket seçeneklerinin kullanımını gösteren bir örnek içerir:
- UiSettingsDemoActivity: Kotlin örneği
- UiSettingsDemoActivity: Java örneği
Minimum kullanıcı etkileşimi için Basit mod
Minimum kullanıcı etkileşimine sahip hafif bir harita istiyorsanız basit mod haritası kullanmayı düşünün. Basit mod, bir haritanın belirli bir konum ve yakınlaştırma düzeyinde bit eşlem resmini sunar. Basit modda kullanıcılar haritayı kaydıramaz veya yakınlaştıramaz ve hareketler çalışmaz. Ayrıntılar için basit mod kılavuzunu inceleyin.
Kullanıcı arayüzü kontrolleri
Google Haritalar API'sı, Android telefonunuzdaki Google Haritalar uygulamasında bulunanlara benzeyen yerleşik kullanıcı arayüzü denetimleri sunar. Bu kontrollerin görünürlüğünü, GoogleMap.getUiSettings
yöntemiyle bir GoogleMap
öğesinden edinilebilen UiSettings
sınıfını kullanarak değiştirebilirsiniz. Bu sınıfta yapılan değişiklikler haritaya hemen yansıtılır. Bu özelliklerin bir örneğini görmek için örnek uygulamadaki Kullanıcı Arayüzü Ayarları demo etkinliğine bakın.
Bu seçeneklerin çoğunu harita XML özellikleri aracılığıyla veya GoogleMapOptions
sınıfı kullanılarak oluşturulduğunda da yapılandırabilirsiniz. Daha fazla ayrıntı için İlk durumu yapılandırma bölümüne bakın.
Her bir kullanıcı arayüzü denetiminin, harita kenarına göre önceden belirlenmiş bir konumu vardır.
GoogleMap
nesnesine dolgu ekleyerek denetimleri üst, alt, sol veya sağ kenardan uzağa taşıyabilirsiniz.
Yakınlaştırma kontrolleri
Maps API, haritanın sağ alt köşesinde görünen yerleşik yakınlaştırma denetimleri sunar. Bunlar varsayılan olarak devre dışıdır, ancak UiSettings.setZoomControlsEnabled(true)
çağrısı yapılarak etkinleştirilebilir.
Pusula
Maps API, belirli durumlarda haritanın sol üst köşesinde görünen bir pusula grafiği sağlar. Pusula yalnızca kamera, yönünün sıfır olmayan veya sıfır olmayan bir şekilde yatırıldığı doğrultuda olduğunda görünür. Kullanıcı pusulayı tıkladığında, kamera hareketini sıfır (varsayılan yön) olan bir konuma geri döner ve pusula kısa bir süre sonra kaybolur. UiSettings.setCompassEnabled(boolean)
numaralı telefonu arayarak pusulanın görünümünü tamamen devre dışı bırakabilirsiniz.
Ancak pusulayı her zaman gösterilmeye zorlayamazsınız.
Konumum düğmesi
Konumum düğmesi, yalnızca Konumum katmanı etkinleştirildiğinde ekranın sağ üst köşesinde görünür. Ayrıntılar için konum verileri kılavuzunu inceleyin.
Seviye seçici
Varsayılan olarak, kullanıcı bir iç mekan haritasını görüntülerken ekranın sağ orta kenarına yakın bir yerde bir seviye seçici (zemin seçici) görünür. İki veya daha fazla iç mekan haritası göründüğünde seviye seçici, o anda odakta olan binaya uygulanır. Bu, genellikle ekranın merkezine en yakın olan binadır. Her binanın, seçici ilk görüntülendiğinde seçilecek varsayılan bir düzeyi vardır. Kullanıcılar, seçiciden seçerek farklı bir seviye belirleyebilir.
GoogleMap.getUiSettings().setIndoorLevelPickerEnabled(boolean)
yöntemini çağırarak seviye seçici kontrolünü devre dışı bırakabilir veya etkinleştirebilirsiniz.
Bu, varsayılan seviye seçiciyi kendi düzeyinizle değiştirmek istediğinizde yararlı olur.
Harita araç çubuğu
Varsayılan olarak, kullanıcılar bir işaretçiye dokunduğunda haritanın sağ alt köşesinde bir araç çubuğu görünür. Araç çubuğu, kullanıcının Google Haritalar mobil uygulamasına hızlı bir şekilde erişmesini sağlar.
UiSettings.setMapToolbarEnabled(boolean)
yöntemini çağırarak araç çubuğunu etkinleştirebilir ve devre dışı bırakabilirsiniz.
Basit mod haritasında, araç çubuğu kullanıcının işlemlerinden bağımsız olarak kalır. Tamamen etkileşimli bir haritada, kullanıcı bir işaretçiye dokunduğunda araç çubuğu devreye girer ve işaretçi artık odakta değilken tekrar kayar.
Araç çubuğu, Google Haritalar mobil uygulamasındaki bir harita görünümüne veya yol tarifi isteğine erişim sağlayan simgeleri görüntüler. Kullanıcı araç çubuğundaki bir simgeye dokunduğunda API, ilgili etkinliği Google Haritalar mobil uygulamasında başlatmak için bir niyet oluşturur.
Araç çubuğu, yukarıdaki ekran görüntüsünde, haritanın sağ alt kısmında görünür. Harita içeriğine bağlı olarak ve Google Haritalar mobil uygulamasının sonuçta kullanılacak amacı desteklemesi şartıyla, haritada amaç simgelerinden biri veya her ikisi de gösterilmez.
Harita hareketleri
Android için Haritalar SDK'sı ile oluşturulan bir harita, Google Haritalar uygulamasıyla aynı hareketleri destekler. Ancak, haritanın durumunu korumak için belirli hareketleri devre dışı bırakmak isteyebilirsiniz. Yakınlaştırma, kaydırma, yatırma ve yönlendirme de programatik olarak ayarlanabilir. Daha ayrıntılı bilgi için Kamera ve Görüntüleme konusuna bakın. Hareketleri devre dışı bırakmanın, kamera konumunu programlı olarak değiştirip değiştiremeyeceğinizi etkilemeyeceğini unutmayın.
Kullanıcı arayüzü kontrollerinde olduğu gibi, GoogleMap.getUiSettings
yöntemini çağırarak GoogleMap
öğesinden edinilebilecek UiSettings
sınıfıyla hareketleri etkinleştirebilir veya devre dışı bırakabilirsiniz. Bu sınıfta yapılan değişiklikler
haritaya anında yansıtılır. Bu özelliklerin bir örneğini görmek için örnek uygulamadaki Kullanıcı Arayüzü Ayarları demo etkinliğine bakın (uygulamayı nasıl yükleyeceğinizi öğrenmek için buraya göz atın).
Bu seçenekleri, harita XML Özellikleri aracılığıyla veya GoogleMapOptions
sınıfını kullanarak oluşturulduğunda da yapılandırabilirsiniz.
Daha fazla bilgi için Haritayı yapılandırma bölümüne bakın.
Yakınlaştırma hareketleri
Harita, kameranın yakınlaştırma düzeyini değiştirebilen çeşitli hareketlere yanıt verir:
- Yakınlaştırma seviyesini 1 (yakınlaştırma) artırmak için iki kez dokunun.
- Yakınlaştırma seviyesini 1 (uzaklaştırma) azaltmak için iki parmağınızla dokunun.
- İki parmağınızı birbirine yakınlaştırın/uzatma
- Bir parmakla iki kez dokunarak yakınlaştırın, ancak ikinci vuruşta bırakmadan parmağınızı uzaklaştırın, ardından uzaklaştırmak için yukarı veya yakınlaştırmak için aşağı kaydırın.
UiSettings.setZoomGesturesEnabled(boolean)
çağrısı yaparak yakınlaştırma hareketlerini devre dışı bırakabilirsiniz. Bu, kullanıcının yakınlaştırma ve uzaklaştırma yapmak için yakınlaştırma kontrollerini kullanıp kullanamayacağını etkilemez.
Kaydırma (kaydırma) hareketleri
Bir kullanıcı haritayı parmağıyla sürükleyerek haritayı kaydırabilir (kaydırabilir).
UiSettings.setScrollGesturesEnabled(boolean)
yöntemini çağırarak kaydırmayı devre dışı bırakabilirsiniz.
Eğme hareketleri
Kullanıcı, iki parmağını haritaya yerleştirip yatırma açısını sırasıyla artırmak veya azaltmak için birlikte aşağı veya yukarı hareket ettirerek haritayı yatırabilir. Eğme hareketlerini UiSettings.setTiltGesturesEnabled(boolean)
yöntemini çağırarak devre dışı bırakabilirsiniz.
Döndürme hareketleri
Kullanıcı, iki parmağını haritaya yerleştirip bir döndürme hareketi uygulayarak haritayı döndürebilir. UiSettings.setRotateGesturesEnabled(boolean)
yöntemini çağırarak döndürmeyi devre dışı bırakabilirsiniz.