あなたの現在の座標位置を保存するために、2つの変数を作成します。
CLLocationDegrees latitude,longitude;
-(void)mapView:(GMSMapView *)mapView idleAtCameraPosition:(GMSCameraPosition *)position
{
CGPoint point = self.mapView.center;
CLLocationCoordinate2D coor = [mapView.projection coordinateForPoint:point];
longitude = coor.longitude;
latitude = coor.latitude;
}
あなたはズームを実行するには、以下の方法でコードを使用することがあります。
-(void)zoomInAction {
CGFloat currentZoom = self.mapView.camera.zoom;
currentZoom = currentZoom + 1.0;
if(currentZoom < self.mapView.maxZoom) {
GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:latitude
longitude:longitude
zoom:currentZoom];
self.mapView.camera = camera;
[self.mapView animateToCameraPosition:camera];
}
}
-(void)zoomOutAction {
CGFloat currentZoom = self.mapView.camera.zoom;
currentZoom = currentZoom - 1.0;
if(currentZoom > self.mapView.minZoom) {
GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:latitude
longitude:longitude
zoom:currentZoom];
self.mapView.camera = camera;
[self.mapView animateToCameraPosition:camera];
}
}