Google Street View, hakkında haber yapılan bölgedeki belirli yollardan panoramik 360 derecelik görünümler sunar.
Bu videoda, kullanıcılarınıza haritadaki bir adresle ilgili gerçek dünya deneyimi sunmak ve onlara varış noktaları veya ilgilendikleri herhangi bir yer hakkında anlamlı bilgiler sağlamak için Street View hizmetini nasıl kullanabileceğiniz gösterilmektedir.
Google Haritalar Android API v2 ile sunulan kapsam, Android cihazınızdaki Google Haritalar uygulamasıyla aynıdır. Street View hakkında daha fazla bilgi edinmek ve desteklenen bölgeleri etkileşimli bir harita üzerinde görmek için Street View hakkında başlıklı makaleyi inceleyebilirsiniz.
StreetViewPanorama sınıfı, uygulamanızdaki Street View panoraması için model oluşturur. Kullanıcı arayüzünüzde panorama, StreetViewPanoramaFragment veya StreetViewPanoramaView nesnesiyle temsil edilir.
Kod örnekleri
GitHub'daki ApiDemos deposu, Street View'un kullanımını gösteren örnekler içerir.
Kotlin örnekleri:
- StreetViewPanoramaBasicDemoActivity: Street View'u kullanmanın temel özellikleri
- StreetViewPanoramaEventsDemoActivity: Etkinlikleri dinleme
- StreetViewPanoramaNavigationDemoActivity: Street View panoramalarını programatik olarak kontrol etme
- StreetViewPanoramaOptionsDemoActivity: Kullanıcı arayüzü ve hareket seçeneklerini değiştirme
- StreetViewPanoramaViewDemoActivity:
StreetViewPanoramaViewkullanma (Fragment yerine) - SplitStreetViewPanoramaAndMapDemoActivity: Street View ve harita gösteren bir etkinliği kullanma
Java örnekleri:
- StreetViewPanoramaBasicDemoActivity: Street View'u kullanmanın temel özellikleri
- StreetViewPanoramaEventsDemoActivity: Etkinlikleri dinleme
- StreetViewPanoramaNavigationDemoActivity: Street View panoramalarını programatik olarak kontrol etme
- StreetViewPanoramaOptionsDemoActivity: Kullanıcı arayüzü ve hareket seçeneklerini değiştirme
- StreetViewPanoramaViewDemoActivity:
StreetViewPanoramaViewkullanma (Fragment yerine) - SplitStreetViewPanoramaAndMapDemoActivity: Street View ve harita gösteren bir etkinlik oluşturma
Android için Haritalar SDK'sında Street View'a genel bakış
Android için Haritalar SDK'sı, Google Street View'da kullanılan görüntüleri elde etmek ve değiştirmek için bir Street View hizmeti sunar. Resimler panorama olarak döndürülür.
Her Street View panoraması, tek bir konumdan tam 360 derecelik görünüm sağlayan bir resim veya resim grubudur. Resimler, 360 derecelik yatay görünüm (tam bir dönüş) ve 180 derecelik dikey görünüm (tam yukarıdan tam aşağıya) içeren eş dikdörtgen (Plate Carrée) projeksiyonuna uygundur. Elde edilen 360 derecelik panorama, görüntünün iki boyutlu yüzeyine sarıldığı bir küre üzerindeki projeksiyonu tanımlar.
StreetViewPanorama, panoramayı merkezinde kamera bulunan bir küre olarak oluşturan bir görüntüleyici sağlar. Kameranın yakınlaştırma ve yönünü (eğim ve yön) kontrol etmek için StreetViewPanoramaCamera simgesini kullanabilirsiniz.
Başlayın
Proje kurma
Android için Haritalar SDK'sı projesi oluşturmak üzere başlangıç kılavuzundaki adımları uygulayın.
Panorama eklemeden önce Street View panoraması kullanılabilirliğini kontrol etme
Google Play Hizmetleri SDK'sı istemci kitaplığı, projenize aktarabileceğiniz ve geliştirme için temel olarak kullanabileceğiniz birkaç Street View örneği içerir. Örnekleri içe aktarmayla ilgili yönergeler için giriş bölümüne bakın.
Android Yardımcı Program Kitaplığı İçin Haritalar SDK'sı, çeşitli uygulamalar için yararlı olan açık kaynaklı bir sınıf kitaplığıdır. GitHub deposunda Street View meta veri yardımcı programı bulunur.
Bu yardımcı program, bir konumun Street View tarafından desteklenip desteklenmediğini kontrol eder. Android uygulamasına Street View panoraması eklerken hata oluşmasını önlemek için bu meta veri yardımcı programını çağırabilir ve yalnızca yanıt OK olduğunda Street View panoraması ekleyebilirsiniz.
API'yi kullanma
Bir Android parçasına Street View panoraması eklemek için aşağıdaki talimatları uygulayın. Uygulamanıza Street View eklemenin en kolay yolu budur. Ardından, parçalar, görünümler ve panoramayı özelleştirme hakkında daha fazla bilgi edinin.
Street View panoraması ekleme
Bunun gibi bir Street View panoraması eklemek için aşağıdaki adımları uygulayın:
Özet olarak:
- Street View panoramayı işleyecek Activity'ye bir Fragment nesnesi ekleyin. Bunu yapmanın en kolay yolu,
Activityiçin düzen dosyasına bir<fragment>öğesi eklemektir. OnStreetViewPanoramaReadyCallbackarayüzünü uygulayın veStreetViewPanoramanesnesinin bir tutma yerini almak içinonStreetViewPanoramaReady(StreetViewPanorama)geri çağırma yöntemini kullanın.- Geri aramayı kaydetmek için parçada
getStreetViewPanoramaAsync()işlevini çağırın.
Her adımla ilgili daha fazla bilgiyi aşağıda bulabilirsiniz.
Parça ekleme
Fragment nesnesi tanımlamak için etkinliğin düzen dosyasına bir <fragment> öğesi ekleyin. Bu öğede, class özelliğini com.google.android.gms.maps.StreetViewPanoramaFragment (veya SupportStreetViewPanoramaFragment) olarak ayarlayın.
Aşağıda, bir düzen dosyasındaki parça örneği verilmiştir:
<fragment
android:name="com.google.android.gms.maps.StreetViewPanoramaFragment"
android:id="@+id/streetviewpanorama"
android:layout_width="match_parent"
android:layout_height="match_parent"/>Street View kodu ekleme
Uygulamanızda Street View panoramasıyla çalışmak için OnStreetViewPanoramaReadyCallback arayüzünü uygulamanız ve geri çağırmanın bir örneğini StreetViewPanoramaFragment veya StreetViewPanoramaView nesnesinde ayarlamanız gerekir. Bu eğitimde, uygulamanıza Street View eklemenin en basit yolu olduğu için StreetViewPanoramaFragment kullanılmaktadır. İlk adım, geri çağırma arayüzünü uygulamaktır:
Kotlin
class StreetViewActivity : AppCompatActivity(), OnStreetViewPanoramaReadyCallback { // ... } private fun newView() { val sanFrancisco = LatLng(37.754130, -122.447129) val view = StreetViewPanoramaView( this, StreetViewPanoramaOptions().position(sanFrancisco), ) } private fun setLocationOfThePanorama(streetViewPanorama: StreetViewPanorama) { val sanFrancisco = LatLng(37.754130, -122.447129) // Set position with LatLng only. streetViewPanorama.setPosition(sanFrancisco) // Set position with LatLng and radius. streetViewPanorama.setPosition(sanFrancisco, 20) // Set position with LatLng and source. streetViewPanorama.setPosition(sanFrancisco, StreetViewSource.OUTDOOR) // Set position with LaLng, radius and source. streetViewPanorama.setPosition(sanFrancisco, 20, StreetViewSource.OUTDOOR) streetViewPanorama.location.links.firstOrNull()?.let { link: StreetViewPanoramaLink -> streetViewPanorama.setPosition(link.panoId) } } private fun zoom(streetViewPanorama: StreetViewPanorama) { val zoomBy = 0.5f val camera = StreetViewPanoramaCamera.Builder() .zoom(streetViewPanorama.panoramaCamera.zoom + zoomBy) .tilt(streetViewPanorama.panoramaCamera.tilt) .bearing(streetViewPanorama.panoramaCamera.bearing) .build() } private fun pan(streetViewPanorama: StreetViewPanorama) { val panBy = 30f val camera = StreetViewPanoramaCamera.Builder() .zoom(streetViewPanorama.panoramaCamera.zoom) .tilt(streetViewPanorama.panoramaCamera.tilt) .bearing(streetViewPanorama.panoramaCamera.bearing - panBy) .build() } private fun tilt(streetViewPanorama: StreetViewPanorama) { var tilt = streetViewPanorama.panoramaCamera.tilt + 30 tilt = if (tilt > 90) 90f else tilt val previous = streetViewPanorama.panoramaCamera val camera = StreetViewPanoramaCamera.Builder(previous) .tilt(tilt) .build() } private fun animate(streetViewPanorama: StreetViewPanorama) { // Keeping the zoom and tilt. Animate bearing by 60 degrees in 1000 milliseconds. val duration: Long = 1000 val camera = StreetViewPanoramaCamera.Builder() .zoom(streetViewPanorama.panoramaCamera.zoom) .tilt(streetViewPanorama.panoramaCamera.tilt) .bearing(streetViewPanorama.panoramaCamera.bearing - 60) .build() streetViewPanorama.animateTo(camera, duration) } }
Java
public class StreetViewActivity extends AppCompatActivity implements OnStreetViewPanoramaReadyCallback { // ... } private void newView() { LatLng sanFrancisco = new LatLng(37.754130, -122.447129); StreetViewPanoramaView view = new StreetViewPanoramaView( this, new StreetViewPanoramaOptions().position(sanFrancisco)); } private void setLocationOfThePanorama(StreetViewPanorama streetViewPanorama) { LatLng sanFrancisco = new LatLng(37.754130, -122.447129); // Set position with LatLng only. streetViewPanorama.setPosition(sanFrancisco); // Set position with LatLng and radius. streetViewPanorama.setPosition(sanFrancisco, 20); // Set position with LatLng and source. streetViewPanorama.setPosition(sanFrancisco, StreetViewSource.OUTDOOR); // Set position with LaLng, radius and source. streetViewPanorama.setPosition(sanFrancisco, 20, StreetViewSource.OUTDOOR); StreetViewPanoramaLocation location = streetViewPanorama.getLocation(); if (location != null && location.links != null) { streetViewPanorama.setPosition(location.links[0].panoId); } } private void zoom(StreetViewPanorama streetViewPanorama) { float zoomBy = 0.5f; StreetViewPanoramaCamera camera = new StreetViewPanoramaCamera.Builder() .zoom(streetViewPanorama.getPanoramaCamera().zoom + zoomBy) .tilt(streetViewPanorama.getPanoramaCamera().tilt) .bearing(streetViewPanorama.getPanoramaCamera().bearing) .build(); } private void pan(StreetViewPanorama streetViewPanorama) { float panBy = 30; StreetViewPanoramaCamera camera = new StreetViewPanoramaCamera.Builder() .zoom(streetViewPanorama.getPanoramaCamera().zoom) .tilt(streetViewPanorama.getPanoramaCamera().tilt) .bearing(streetViewPanorama.getPanoramaCamera().bearing - panBy) .build(); } private void tilt(StreetViewPanorama streetViewPanorama) { float tilt = streetViewPanorama.getPanoramaCamera().tilt + 30; tilt = (tilt > 90) ? 90 : tilt; StreetViewPanoramaCamera previous = streetViewPanorama.getPanoramaCamera(); StreetViewPanoramaCamera camera = new StreetViewPanoramaCamera.Builder(previous).tilt(tilt).build(); } private void animate(StreetViewPanorama streetViewPanorama) { // Keeping the zoom and tilt. Animate bearing by 60 degrees in 1000 milliseconds. long duration = 1000; StreetViewPanoramaCamera camera = new StreetViewPanoramaCamera.Builder() .zoom(streetViewPanorama.getPanoramaCamera().zoom) .tilt(streetViewPanorama.getPanoramaCamera().tilt) .bearing(streetViewPanorama.getPanoramaCamera().bearing - 60) .build(); streetViewPanorama.animateTo(camera, duration); } }
Activity sınıfınızın onCreate() yönteminde, düzen dosyasını içerik görünümü olarak ayarlayın. Örneğin, düzen dosyasının adı main.xml ise şu kodu kullanın:
Kotlin
override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_street_view) val streetViewPanoramaFragment = supportFragmentManager .findFragmentById(R.id.street_view_panorama) as SupportStreetViewPanoramaFragment streetViewPanoramaFragment.getStreetViewPanoramaAsync(this) }
Java
@Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_street_view); SupportStreetViewPanoramaFragment streetViewPanoramaFragment = (SupportStreetViewPanoramaFragment) getSupportFragmentManager().findFragmentById(R.id.street_view_panorama); streetViewPanoramaFragment.getStreetViewPanoramaAsync(this); }
FragmentManager.findFragmentById() yöntemini çağırıp <fragment> öğenizin kaynak kimliğini ileterek parçanın herkese açık kullanıcı adını alın.
Düzen dosyasını oluşturduğunuzda R.id.streetviewpanorama kaynak kimliğinin Android projesine otomatik olarak eklendiğini göreceksiniz.
Ardından, parçada geri çağırmayı ayarlamak için getStreetViewPanoramaAsync() kullanın.
Kotlin
val streetViewPanoramaFragment = supportFragmentManager .findFragmentById(R.id.street_view_panorama) as SupportStreetViewPanoramaFragment streetViewPanoramaFragment.getStreetViewPanoramaAsync(this)
Java
SupportStreetViewPanoramaFragment streetViewPanoramaFragment = (SupportStreetViewPanoramaFragment) getSupportFragmentManager().findFragmentById(R.id.street_view_panorama); streetViewPanoramaFragment.getStreetViewPanoramaAsync(this);
Kullanıma hazır, boş olmayan bir StreetViewPanorama örneği almak için onStreetViewPanoramaReady(StreetViewPanorama) geri çağırma yöntemini kullanın.
Kotlin
override fun onStreetViewPanoramaReady(streetViewPanorama: StreetViewPanorama) { val sanFrancisco = LatLng(37.754130, -122.447129) streetViewPanorama.setPosition(sanFrancisco) }
Java
@Override public void onStreetViewPanoramaReady(StreetViewPanorama streetViewPanorama) { LatLng sanFrancisco = new LatLng(37.754130, -122.447129); streetViewPanorama.setPosition(sanFrancisco); }
İlk durumu yapılandırma hakkında daha fazla bilgi
Haritadan farklı olarak, Street View panoramasının ilk durumunu XML aracılığıyla yapılandırmak mümkün değildir. Ancak panoramayı, belirttiğiniz seçenekleri içeren bir StreetViewPanoramaOptions nesnesi ileterek programatik olarak yapılandırabilirsiniz.
StreetViewPanoramaFragmentkullanıyorsanız parçayı oluşturmak ve özel yapılandırılmış seçeneklerinizi iletmek içinStreetViewPanoramaFragment.newInstance(StreetViewPanoramaOptions options)statik fabrika yöntemini kullanın.StreetViewPanoramaViewkullanıyorsanızStreetViewPanoramaView(Context, StreetViewPanoramaOptions)oluşturucusunu kullanın ve özel olarak yapılandırılmış seçeneklerinizi iletin.
Kotlin
val sanFrancisco = LatLng(37.754130, -122.447129) val view = StreetViewPanoramaView( this, StreetViewPanoramaOptions().position(sanFrancisco), )
Java
LatLng sanFrancisco = new LatLng(37.754130, -122.447129); StreetViewPanoramaView view = new StreetViewPanoramaView( this, new StreetViewPanoramaOptions().position(sanFrancisco));
StreetViewPanoramaFragment hakkında daha fazla bilgi
StreetViewPanoramaFragment, Android Fragment sınıfının bir alt sınıfıdır ve Android fragment'ına Street View panoraması yerleştirmenize olanak tanır.
StreetViewPanoramaFragment nesneleri, panorama için kapsayıcı görevi görür ve StreetViewPanorama nesnesine erişim sağlar.
StreetViewPanoramaView
Android View sınıfının bir alt sınıfı olan StreetViewPanoramaView, Android View içine bir Street View panoraması yerleştirmenize olanak tanır. View, ekranın dikdörtgen bir bölgesini temsil eder ve Android uygulamaları ile widget'ları için temel bir yapı taşıdır. StreetViewPanoramaFragment gibi, StreetViewPanoramaView da panorama için bir kapsayıcı görevi görür ve temel özellikleri StreetViewPanorama nesnesi aracılığıyla gösterir. Bu sınıfın kullanıcıları, onCreate(), onDestroy(), onResume() ve onPause()) gibi tüm etkinlik yaşam döngüsü yöntemlerini StreetViewPanoramaView sınıfındaki ilgili yöntemlere yönlendirmelidir.
Kullanıcı tarafından kontrol edilen özelliği özelleştirme
Varsayılan olarak, kullanıcı Street View panoramasına bakarken şu özellikler kullanılabilir: kaydırma, yakınlaştırma ve bitişik panoramalara gitme. Kullanıcı tarafından kontrol edilen hareketleri StreetViewPanorama yöntemleriyle etkinleştirebilir ve devre dışı bırakabilirsiniz. Hareket devre dışı bırakıldığında programatik değişiklikler yapılabilir.
Panoramanın konumunu ayarlama
Street View panoraması konumunu ayarlamak için StreetViewPanorama.setPosition() yöntemini çağırın ve LatLng değerini iletin.
radius ve source parametrelerini isteğe bağlı olarak da iletebilirsiniz.
Street View'un eşleşen bir panorama arayacağı alanı genişletmek veya daraltmak istiyorsanız yarıçap kullanışlıdır. Yarıçapın 0 olması, panoramik görüntünün tam olarak belirtilen LatLng değerine bağlanması gerektiği anlamına gelir.
Varsayılan yarıçap 50 metredir. Eşleşen alanda birden fazla panorama varsa API en iyi eşleşmeyi döndürür.
Street View'u yalnızca dış mekan panoramalarını arayacak şekilde kısıtlamak istiyorsanız kaynak kullanışlıdır. Varsayılan olarak, Street View panoramaları müzeler, kamu binaları, kafeler ve işletmeler gibi yerlerin içinde olabilir. Belirtilen konum için dış mekan panoramaları bulunmayabilir.
Kotlin
val sanFrancisco = LatLng(37.754130, -122.447129) // Set position with LatLng only. streetViewPanorama.setPosition(sanFrancisco) // Set position with LatLng and radius. streetViewPanorama.setPosition(sanFrancisco, 20) // Set position with LatLng and source. streetViewPanorama.setPosition(sanFrancisco, StreetViewSource.OUTDOOR) // Set position with LaLng, radius and source. streetViewPanorama.setPosition(sanFrancisco, 20, StreetViewSource.OUTDOOR)
Java
LatLng sanFrancisco = new LatLng(37.754130, -122.447129); // Set position with LatLng only. streetViewPanorama.setPosition(sanFrancisco); // Set position with LatLng and radius. streetViewPanorama.setPosition(sanFrancisco, 20); // Set position with LatLng and source. streetViewPanorama.setPosition(sanFrancisco, StreetViewSource.OUTDOOR); // Set position with LaLng, radius and source. streetViewPanorama.setPosition(sanFrancisco, 20, StreetViewSource.OUTDOOR);
Alternatif olarak, StreetViewPanorama.setPosition() öğesine bir panoId ileterek konumu panorama kimliğine göre ayarlayabilirsiniz.
Bitişik panoramaların panorama kimliğini almak için önce getLocation() yöntemini kullanarak bir StreetViewPanoramaLocation alın.
Bu nesne, mevcut panoramaya ait kimliği ve her biri mevcut panoramaya bağlı bir panoramaya ait kimliği içeren StreetViewPanoramaLink nesnelerinden oluşan bir diziyi içerir.
Kotlin
streetViewPanorama.location.links.firstOrNull()?.let { link: StreetViewPanoramaLink -> streetViewPanorama.setPosition(link.panoId) }
Java
StreetViewPanoramaLocation location = streetViewPanorama.getLocation(); if (location != null && location.links != null) { streetViewPanorama.setPosition(location.links[0].panoId); }
Yakınlaştırma ve uzaklaştırma
StreetViewPanoramaCamera.zoom değerini ayarlayarak yakınlaştırma seviyesini programatik olarak değiştirebilirsiniz.
Yakınlaştırmayı 1,0 olarak ayarlarsanız resim 2 kat büyütülür.
Aşağıdaki snippet, mevcut kameranın eğim ve yönüyle yeni bir kamera oluşturmak için StreetViewPanoramaCamera.Builder() kullanırken yakınlaştırmayı yüzde elli artırır.
Kotlin
val zoomBy = 0.5f val camera = StreetViewPanoramaCamera.Builder() .zoom(streetViewPanorama.panoramaCamera.zoom + zoomBy) .tilt(streetViewPanorama.panoramaCamera.tilt) .bearing(streetViewPanorama.panoramaCamera.bearing) .build()
Java
float zoomBy = 0.5f; StreetViewPanoramaCamera camera = new StreetViewPanoramaCamera.Builder() .zoom(streetViewPanorama.getPanoramaCamera().zoom + zoomBy) .tilt(streetViewPanorama.getPanoramaCamera().tilt) .bearing(streetViewPanorama.getPanoramaCamera().bearing) .build();
Kamera yönünü (bakış açısı) ayarlama
StreetViewPanoramaCamera üzerinde yön ve eğimi ayarlayarak Street View kamerasının yönünü belirleyebilirsiniz.
- bearing
- Kameranın baktığı yön. Kamera odağı etrafında gerçek kuzeyden saat yönünde derece cinsinden belirtilir. Gerçek kuzey 0, doğu 90, güney 180, batı 270'tir.
- eğme
- Y ekseni yukarı veya aşağı eğilir. Aralık -90 ile 0 ve 90 arasındadır. -90 doğrudan aşağıya, 0 ufka ve 90 doğrudan yukarıya bakar. Varyans, kameranın ilk varsayılan eğiminden ölçülür. Bu eğim genellikle (ancak her zaman değil) düz yataydır. Örneğin, bir tepede çekilen bir resmin varsayılan eğimi muhtemelen yatay olmayacaktır.
Aşağıdaki snippet, mevcut kameranın yakınlaştırma ve eğme özelliklerine sahip yeni bir kamera oluşturmak için StreetViewPanoramaCamera.Builder() kullanır ve yönü 30 derece sola değiştirir.
Kotlin
val panBy = 30f val camera = StreetViewPanoramaCamera.Builder() .zoom(streetViewPanorama.panoramaCamera.zoom) .tilt(streetViewPanorama.panoramaCamera.tilt) .bearing(streetViewPanorama.panoramaCamera.bearing - panBy) .build()
Java
float panBy = 30; StreetViewPanoramaCamera camera = new StreetViewPanoramaCamera.Builder() .zoom(streetViewPanorama.getPanoramaCamera().zoom) .tilt(streetViewPanorama.getPanoramaCamera().tilt) .bearing(streetViewPanorama.getPanoramaCamera().bearing - panBy) .build();
Aşağıdaki snippet, kamerayı 30 derece yukarı eğer.
Kotlin
var tilt = streetViewPanorama.panoramaCamera.tilt + 30 tilt = if (tilt > 90) 90f else tilt val previous = streetViewPanorama.panoramaCamera val camera = StreetViewPanoramaCamera.Builder(previous) .tilt(tilt) .build()
Java
float tilt = streetViewPanorama.getPanoramaCamera().tilt + 30; tilt = (tilt > 90) ? 90 : tilt; StreetViewPanoramaCamera previous = streetViewPanorama.getPanoramaCamera(); StreetViewPanoramaCamera camera = new StreetViewPanoramaCamera.Builder(previous).tilt(tilt).build();
Kamera hareketlerini canlandırma
Kamera hareketlerine animasyon eklemek için StreetViewPanorama.animateTo() yöntemini çağırın.
Animasyon, mevcut kamera özellikleri ile yeni kamera özellikleri arasında interpolasyon yapar. Animasyon olmadan doğrudan kameraya geçmek istiyorsanız süreyi 0 olarak ayarlayabilirsiniz.
Kotlin
// Keeping the zoom and tilt. Animate bearing by 60 degrees in 1000 milliseconds. val duration: Long = 1000 val camera = StreetViewPanoramaCamera.Builder() .zoom(streetViewPanorama.panoramaCamera.zoom) .tilt(streetViewPanorama.panoramaCamera.tilt) .bearing(streetViewPanorama.panoramaCamera.bearing - 60) .build() streetViewPanorama.animateTo(camera, duration)
Java
// Keeping the zoom and tilt. Animate bearing by 60 degrees in 1000 milliseconds. long duration = 1000; StreetViewPanoramaCamera camera = new StreetViewPanoramaCamera.Builder() .zoom(streetViewPanorama.getPanoramaCamera().zoom) .tilt(streetViewPanorama.getPanoramaCamera().tilt) .bearing(streetViewPanorama.getPanoramaCamera().bearing - 60) .build(); streetViewPanorama.animateTo(camera, duration);
Aşağıdaki resimde, yukarıdaki animasyonu Handler.postDelayed() kullanarak her 2.000 milisaniyede bir çalışacak şekilde planladığınızda elde edilen sonuç gösterilmektedir: