Pertanyaan saya adalah, apakah ada yang tahu cara mengatur peta google, untuk membuka lokasi saya dan dalam tampilan yang diperbesar?
Saat ini, tampilan utama terbuka ke Afrika, diperkecil sepenuhnya.
Jadi saya telah mencari selama berhari-hari, dan yang dapat saya temukan hanyalah:
1) Anda tidak dapat menganimasikan dua hal (seperti memperbesar dan pergi ke lokasi saya) dalam satu peta google? Jadi jika saya dapat mengetahui cara mengatur zoom sebelum saya mengatur animasi, maka masalah ini akan terpecahkan. Itu cenderung menjadi masalahnya, Anda bisa mengubahnya, tapi tidak keduanya.
2) Saya telah menemukan kelas lain yang mungkin berguna, tetapi tidak ada bantuan tentang cara menyiapkan kode sehingga kelas tersebut dapat memanipulasi peta google.
Ini adalah kode yang saya pegang sejauh ini, beberapa berfungsi, beberapa tidak. Beberapa yang saya pikir mungkin berguna di kemudian hari.
package com.MYWEBSITE.www;
import com.google.android.gms.maps.CameraUpdateFactory;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.SupportMapFragment;
import com.google.android.gms.maps.model.LatLng;
import android.content.Context;
import android.location.Criteria;
import android.location.Location;
import android.location.LocationManager;
import android.os.Bundle;
import android.support.v4.app.FragmentActivity;
import android.view.Menu;
public class MainActivity extends FragmentActivity {
private GoogleMap map;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main_layout);
map = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map)).getMap();
map.setMyLocationEnabled(true);
//LocationSource a = (LocationSource) getSystemService(Context.LOCATION_SERVICE);
//LocationManager b = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
//map.setLocationSource(a);
Criteria criteria = new Criteria();
LocationManager locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
String provider = locationManager.getBestProvider(criteria, false);
Location location = locationManager.getLastKnownLocation(provider);
double lat = location.getLatitude();
double lng = location.getLongitude();
LatLng coordinate = new LatLng(lat, lng);
//CameraPosition.Builder x = CameraPosition.builder();
//x.target(coordinate);
//x.zoom(13);
//Projection proj = map.getProjection();
//Point focus = proj.toScreenLocation(coordinate);
//map.animateCamera(CameraUpdateFactory.newLatLng(coordinate));
map.animateCamera(CameraUpdateFactory.zoomBy(13));
//map.moveCamera(CameraUpdateFactory.newLatLng(coordinate));
////LatLngBounds bounds = mMap.getProjection().getVisibleRegion().latLngBounds;
}
}
sumber
Anda dapat mengubah lokasi, memperbesar / memperkecil, arah, dan memiringkan semuanya sekaligus. Ini juga memungkinkan untuk mengatur durasi
animateCamera()
panggilan.Lihat dokumennya di sini:
https://developers.google.com/maps/documentation/android/views?hl=id-ID#moving_the_camera
sumber
ini adalah solusi sederhana untuk pertanyaan Anda
sumber
Coba dengan cara ini -
}
sumber
Anda juga dapat mengatur kedua parameter seperti,
Ini menempatkan peta Anda pada posisi dan zoom tertentu. Saya menggunakan ini untuk menyiapkan peta saya.
sumber
Ini jawaban yang terlambat tapi saya pikir itu akan membantu. Gunakan metode ini:
Gunakan metode ini setelah memuat peta. Bersulang!
sumber
Cara termudah untuk melakukannya adalah dengan menggunakan CancelableCallback. Anda harus memeriksa bahwa tindakan pertama sudah selesai dan kemudian memanggil yang kedua:
sumber
Jawaban @ CommonsWare sebenarnya tidak berfungsi. Saya menemukan bahwa ini berfungsi dengan baik:
sumber
1. Tambahkan kode xml dalam tata letak Anda untuk menampilkan peta.
2. Aktifkan api google maps kemudian dapatkan tempat kunci api di bawah ini.
3. Tambahkan kode ini di oncreate.
4. Tambahkan kode ini setelah oncreate. kemudian akses lokasi saat ini dengan penanda ditempatkan di dalamnya
sumber
Anda tidak dapat menganimasikan dua hal (seperti memperbesar dan pergi ke lokasi saya) dalam satu peta google.
Jadi gunakan gerakan dan animasikan Kamera untuk memperbesar
sumber
sumber