2016-12-06 2 views
1

Helllo 모두, Google지도에서 원을 표시해야하고 사용자가 크기를 조정하고 크기를 조정하고 드래그 한 다음 원의 반경을 찾아야합니다. 중심 위도와 경도. 내가 어떻게 이걸 얻을 수 있니? 슬라이더 값 변경에 크기 조정 GMSCircle이 들어Google지도에서 GMSCircle 크기 조정, 드래그 및 크기 조정 -c

- (void)mapView: (GMSMapView*)mapView 
didChangeCameraPosition: (GMSCameraPosition*)position 
{ 
    //set GMSCameraPosition to googleMapCircle position 
    googleMapCircle.position=position.target; 

} 

enter image description here

: Tappable GMSCircle이 들어

답변

1

googleMapCircle.tappable = true; 

그리고 드래그 원을 달성하기 위해 구글 맵의 대리자 메서드 didTapOverlay를 추가 할 필요가 설정 슬라이더 값 변경 방법에 아래 코드 추가 :

- (IBAction)sliderValueChnage:(id)sender { 

    _slider = (UISlider*)sender; 
    NSLog(@"slider value = %f", _slider.value); 

    int radius=(int)_slider.value; 
    _lblRadius.text=[NSString stringWithFormat:@"%d m",radius]; 


//For achieve circle radius increase or decrease properly ,first clear map view 
    [_googleMap clear]; 

//Set centre coordinate where you want to draw circle 
CLLocationCoordinate2D circleCenter = CLLocationCoordinate2DMake(_locationManager.location.coordinate.latitude, _locationManager.location.coordinate.longitude); 

// Draw circle on google map 
    GMSCircle *googleMapCircle = [GMSCircle circleWithPosition:circleCenter 
              radius:_slider.value]; 
    googleMapCircle.fillColor = [[UIColor purpleColor] colorWithAlphaComponent:.4f]; 
    googleMapCircle.strokeColor = [UIColor purpleColor]; 
    googleMapCircle.strokeWidth = 5; 
    googleMapCircle.tappable=YES; 
    googleMapCircle.map = _googleMap; 


} 

enter image description here

enter image description here

관련 문제