2010-05-11 2 views
2

데모 목적으로 Mapkit보기에서 사용자 위치를 시뮬레이트해야합니다. 문서화되지 않은 API를 사용하면 맵보기의 아무 곳에 나 파란색 점을 배치 할 수 있습니다. 불행히도 마녀가 사용하는 문서화되지 않은 API를 모르십니까? 도움이 되었습니까?원하는 위치로 mapKit에 파란색 점 넣기

답변

0

설정 했습니까?

mapView.showsUserLocation = YES; 

특정 위치를 설정하는 것은 다소 어렵지만 문서화되지 않은 API가 있어야 가능합니다. 아래 코드를 참조하십시오 :

- (void)animateToSelectedPlace:(CGFloat)zoomLevel { 
    MKCoordinateRegion region; 
    region.center = [self getCoordinateFromComponents:chosenLatitude:chosenLongitude]; 

    MKCoordinateSpan span = {zoomLevel,zoomLevel}; 
    region.span = span; 

    [mapView setRegion:region animated:YES]; 
} 

-(CLLocationCoordinate2D)getCoordinateFromComponents:(NSNumber*)latitude:(NSNumber*)longitude { 
    CLLocationCoordinate2D coord; 
    coord.latitude = latitude.doubleValue; 
    coord.longitude = longitude.doubleValue; 
    return coord; 
} 
+0

내가 showsUserLocation 테스트 한을 가지고 있지만. 하지만 파란색 점을 특정 위치로 설정해야합니다. 아이디어, 샘플 코드? – fvisticot

+0

수정 된 답변 샘플 코드 포함, 시작 방법을 참조하십시오 –

+0

도움 주셔서 감사합니다. 작동하지 않습니다. 잘 이해하면 animateToSelectPlace 함수를 사용하여지도 위치 (지역 정의의 중심)를 애니메이션으로 설정하는 데 사용됩니다. mapView.showsUserLocation = YES로 설정했지만 파란색 점이지도의 가운데에 표시되지 않습니다 ... 다른 아이디어? – fvisticot

0

사용자 정의 위치를 ​​설정할 수 있는지 확신하지 못합니다. 일반적으로 사람들은 파란색 사용자 지점 시뮬레이션 이미지를 사용합니다. 난 100 % 확신, 그래서 당신은 YES =이 MKAnnotation와 같은 userLocation를 처리 할 수 ​​있는지 확인하기 위해이 같은 것을 시도 할 수있는 기회 ...

CLLocationCoordinate2D c = self.mapView.userLocation.location.coordinate; 
[[self.mapView userLocation] setCoordinate:c]; 
+0

'setCoordinate' 메소드는 읽기 전용입니다. – chicobermuda

관련 문제