CameraUpdateFactory

Tetap teratur dengan koleksi Simpan dan kategorikan konten berdasarkan preferensi Anda.
class final publik CameraUpdateFactory memperluas Object

Class yang berisi metode untuk membuat objek CameraUpdate yang mengubah kamera peta. Untuk mengubah kamera peta, panggil animateCamera(CameraUpdate), animateCamera(CameraUpdate, GoogleMap.CancelableCallback), atau moveCamera(CameraUpdate), menggunakan objek CameraUpdate yang dibuat dengan class ini.

Misalnya, untuk memperbesar peta, Anda dapat menggunakan kode berikut:

GoogleMap map = ...;
 map.animateCamera(CameraUpdateFactory.zoomIn());
 

Sebelum menggunakan metode apa pun dari class ini, Anda harus melakukan salah satu hal berikut untuk memastikan bahwa class ini diinisialisasi:

Panduan Developer

Untuk informasi selengkapnya, baca panduan developer Kamera dan Tampilan.

Ringkasan Metode Publik

statis CameraUpdate
newCameraPosition(CameraPosition cameraPosition)
Menampilkan CameraUpdate yang memindahkan kamera ke CameraPosition yang ditentukan.
statis CameraUpdate
newLatLng(LatLng latLng)
Menampilkan CameraUpdate yang memindahkan bagian tengah layar ke lintang dan bujur yang ditentukan oleh objek LatLng.
statis CameraUpdate
newLatLngBounds(batas LatLngBounds, lebar int, tinggi int, padding int)
Menampilkan CameraUpdate yang mengubah kamera sehingga batas lintang/bujur yang ditentukan berada di tengah layar dalam kotak pembatas dimensi yang ditentukan pada tingkat zoom tertinggi.
statis CameraUpdate
newLatLngBounds(batas LatLngBounds, padding int)
Menampilkan CameraUpdate yang mengubah kamera sehingga batas lintang/bujur yang ditentukan berada di tengah layar pada tingkat zoom tertinggi.
statis CameraUpdate
newLatLngZoom(lintang LatLng, float zoom)
Menampilkan CameraUpdate yang memindahkan bagian tengah layar ke lintang dan bujur yang ditentukan oleh objek LatLng, serta berpindah ke tingkat zoom yang ditentukan.
statis CameraUpdate
scrollBy(xPixel mengambang, yPixel mengambang)
Menampilkan CameraUpdate yang men-scroll kamera ke peta, menggeser bagian tengah tampilan berdasarkan jumlah piksel yang ditentukan dalam arah x dan y.
statis CameraUpdate
zoomBy(jumlah float, Fokus titik)
Menampilkan CameraUpdate yang menggeser tingkat zoom titik pandang kamera saat ini.
statis CameraUpdate
zoomBy(jumlah float)
Menampilkan CameraUpdate yang menggeser tingkat zoom titik pandang kamera saat ini.
statis CameraUpdate
zoomIn()
Menampilkan CameraUpdate yang memperbesar peta dengan memindahkan ketinggian titik pandang lebih dekat ke permukaan Bumi.
statis CameraUpdate
zoomOut()
Menampilkan CameraUpdate yang memperkecil peta dengan memindahkan ketinggian titik pandang lebih jauh dari permukaan Bumi.
statis CameraUpdate
zoomTo(zoom mengambang)
Menampilkan CameraUpdate yang memindahkan titik pandang kamera ke tingkat zoom tertentu.

Ringkasan Metode Turunan

Metode Publik

publik statis CameraUpdate newCameraPosition (CameraPosition cameraPosition)

Menampilkan CameraUpdate yang memindahkan kamera ke CameraPosition yang ditentukan. Akibatnya, ini menciptakan transformasi dari lintang, bujur, tingkat zoom, bearing, dan kemiringan objek CameraPosition.

Parameter
kameraPosisi
Hasil

publik statis CameraUpdate newLatLng (LatLng latLng)

Menampilkan CameraUpdate yang memindahkan bagian tengah layar ke lintang dan bujur yang ditentukan oleh objek LatLng. Tindakan ini akan menempatkan kamera di objek LatLng.

Parameter
linLng objek LatLng yang berisi lintang dan bujur yang diinginkan.
Hasil

publik statis CameraUpdate newLatLngBounds (LatLngBounds batas, lebar int, tinggi int, padding int)

Menampilkan CameraUpdate yang mengubah kamera sehingga batas lintang/bujur yang ditentukan berada di tengah layar dalam kotak pembatas dimensi yang ditentukan pada tingkat zoom tertinggi. Anda dapat menentukan padding tambahan, untuk lebih membatasi ukuran kotak pembatas. CameraUpdate yang ditampilkan memiliki bearing 0 dan kemiringan 0.

Tidak seperti newLatLngBounds(LatLngBounds, int), Anda dapat menggunakan CameraUpdate yang ditampilkan oleh metode ini untuk mengubah kamera sebelum fase tata letak peta, karena argumen menentukan ukuran kotak pembatas yang diinginkan.

Parameter
batas wilayah tersebut agar pas dengan kotak pembatas
lebar lebar kotak pembatas dalam piksel (px)
tinggi tinggi kotak pembatas dalam piksel (px)
padding batasan ukuran tambahan (dalam px) dari kotak pembatas
Hasil

publik statis CameraUpdate newLatLngBounds (LatLngBounds batas, padding int)

Menampilkan CameraUpdate yang mengubah kamera sehingga batas lintang/bujur yang ditentukan berada di tengah layar pada tingkat zoom tertinggi. Anda dapat menentukan padding untuk menyisipkan kotak pembatas dari tepi tampilan peta. CameraUpdate yang ditampilkan memiliki bearing 0 dan kemiringan 0.

Jangan ubah kamera dengan pembaruan kamera ini sampai peta diberi tata letak (agar metode ini dapat menentukan dengan benar kotak pembatas dan tingkat zoom yang sesuai, peta harus memiliki ukuran). Jika tidak, IllegalStateException akan ditampilkan. Peta tersebut TIDAK cukup tersedia, tampilan yang berisi peta juga harus memiliki tata letak agar dimensinya telah ditentukan. Jika Anda tidak yakin hal ini telah terjadi, gunakan newLatLngBounds(LatLngBounds, int, int, int) dan berikan dimensi peta secara manual.

Parameter
batas wilayah agar pas dengan layar
padding spasi (dalam px) untuk keluar antara tepi kotak pembatas dan tepi tampilan. Nilai ini diterapkan ke keempat sisi kotak pembatas.
Hasil

publik statis CameraUpdate newLatLngZoom (LatLng latLng, float zoom)

Menampilkan CameraUpdate yang memindahkan bagian tengah layar ke lintang dan bujur yang ditentukan oleh objek LatLng, serta berpindah ke tingkat zoom yang ditentukan.

Parameter
linLng objek LatLng yang berisi lintang dan bujur yang diinginkan.
zoom tingkat zoom yang diinginkan, dalam kisaran 2,0 hingga 21,0. Nilai di bawah rentang ini ditetapkan ke 2,0, dan nilai di atasnya ditetapkan ke 21,0. Perbesar nilai untuk memperbesar. Tidak semua area memiliki ubin pada tingkat zoom terbesar.
Hasil

publik statis CameraUpdate scrollBy (float xPixel, yPixel mengambang)

Menampilkan CameraUpdate yang men-scroll kamera ke peta, menggeser bagian tengah tampilan berdasarkan jumlah piksel yang ditentukan dalam arah x dan y.

Contoh:

  • Jika xPixel = 5 dan yPixel = 0, sistem akan men-scroll ke kanan dengan menggerakkan kamera sehingga peta terlihat bergeser 5 piksel ke kiri.
  • Jika xPixel = 0 dan yPixel = 5, sistem akan men-scroll ke bawah dengan menggerakkan kamera sehingga peta terlihat bergeser 5 piksel ke atas.

Scrolling bersifat relatif terhadap orientasi kamera saat ini. Misalnya, jika kamera memiliki sudut 90 derajat, maka arah timur adalah "ke atas" dan scroll ke kanan akan memindahkan kamera ke selatan.

Parameter
Pixel jumlah piksel untuk men-scroll secara horizontal. Nilai positif menggerakkan kamera ke kanan, sehubungan dengan orientasinya saat ini. Nilai negatif memindahkan kamera ke kiri, sehubungan dengan orientasinya saat ini.
YPixel jumlah piksel untuk men-scroll secara vertikal. Nilai positif menggerakkan kamera ke bawah, sehubungan dengan orientasinya saat ini. Nilai negatif menggerakkan kamera ke atas, sehubungan dengan orientasinya saat ini.
Hasil

publik statis CameraUpdate zoomBy (jumlah float, Fokus titik)

Menampilkan CameraUpdate yang menggeser tingkat zoom titik pandang kamera saat ini.

Titik yang ditentukan oleh fokus akan tetap ada (yaitu, sama dengan lintang/bujur yang sama sebelum dan setelah proses zoom).

Metode ini berbeda dengan zoomTo(float) karena zoom tersebut relatif terhadap kamera saat ini.

Misalnya, jika LatLng (11.11, 22.22) saat ini berada di lokasi layar (23, 45). Setelah memanggil metode ini dengan jumlah zoom dan LatLng ini, lokasi layar LatLng ini akan tetap (23, 45).

Parameter
amount untuk mengubah tingkat zoom. Nilai positif menunjukkan zoom yang lebih dekat ke permukaan Bumi, sedangkan nilai negatif menunjukkan zoom yang jauh dari permukaan Bumi.
focus lokasi piksel pada layar yang akan tetap diperbaiki setelah proses zoom. lintang/bujur yang ada di lokasi piksel tersebut sebelum gerakan kamera akan tetap sama setelah kamera bergerak.
Hasil

publik statis CameraUpdate zoomBy (jumlah float)

Menampilkan CameraUpdate yang menggeser tingkat zoom titik pandang kamera saat ini.

Metode ini berbeda dengan zoomTo(float) karena zoom tersebut relatif terhadap kamera saat ini.

Parameter
amount untuk mengubah tingkat zoom. Nilai positif menunjukkan zoom yang lebih dekat ke permukaan Bumi, sedangkan nilai negatif menunjukkan zoom yang jauh dari permukaan Bumi.
Hasil

publik statis CameraUpdate zoomIn ()

Menampilkan CameraUpdate yang memperbesar peta dengan memindahkan ketinggian titik pandang lebih dekat ke permukaan Bumi. Peningkatan zoom adalah 1,0.

Hasil

publik statis CameraUpdate zoomOut ()

Menampilkan CameraUpdate yang memperkecil peta dengan memindahkan ketinggian titik pandang lebih jauh dari permukaan Bumi. Penambahan zoom adalah -1,0.

Hasil

publik statis CameraUpdate zoomTo (zoom mengambang)

Menampilkan CameraUpdate yang memindahkan titik pandang kamera ke tingkat zoom tertentu.

Parameter
zoom tingkat zoom yang diinginkan, dalam kisaran 2,0 hingga 21,0. Nilai di bawah rentang ini ditetapkan ke 2,0, dan nilai di atasnya ditetapkan ke 21,0. Perbesar nilai untuk memperbesar. Tidak semua area memiliki ubin pada tingkat zoom terbesar.