我不认为你可以,但你可以拯救你的CameraPosition
其中有你的位置/缩放/角度...
http://developer.android.com/reference/com/google/android/gms/maps/model/CameraPosition.html http://developer.android.com/reference/com/google/android/gms/maps/model/CameraPosition.html
所以你可以在你的onDestroy
这得到了CameraPosition
从您的地图并将其存储在您的SharedPreferences
。在你的onCreate()
你重新创建你的CameraPosition
来自SharedPreferences
(在你的地图实例化之后)。
// somewhere in your onDestroy()
@Override
protected void onDestroy() {
CameraPosition mMyCam = MyMap.getCameraPosition();
double longitude = mMyCam.target.longitude;
(...)
SharedPreferences settings = getSharedPreferences("SOME_NAME", 0);
SharedPreferences.Editor editor = settings.edit();
editor.putDouble("longitude", longitude);
(...) //put all other values like latitude, angle, zoom...
editor.commit();
}
in your onCreate()
SharedPreferences settings = getSharedPreferences("SOME_NAME", 0);
// "initial longitude" is only used on first startup
double longitude = settings.getDouble("longitude", "initial_longitude");
(...) //add the other values
LatLng startPosition = new LatLng() //with longitude and latitude
CameraPosition cameraPosition = new CameraPosition.Builder()
.target(startPosition) // Sets the center of the map to Mountain View
.zoom(17) // Sets the zoom
.bearing(90) // Sets the orientation of the camera to east
.tilt(30) // Sets the tilt of the camera to 30 degrees
.build(); // Creates a CameraPosition from the builder
创建一个新的cameraPosition并为其设置动画。当然,地图此时已实例化
map.animateCamera(CameraUpdateFactory.newCameraPosition(cameraPosition));