내 앱에 사용자 위치가 있지만 현재 사용자 위치에 어노테이션을 어떻게 놓을 수 있습니까? 나는 사용자 위치의 long & lat를 가져 와서 그런 식으로 주석을 삭제해야합니까? 또는 나는 그것을 어떻게 할 것이냐?iOS-MKMapKit- 사용자 위치에 주석을 어떻게 놓을 수 있습니까?
2
A
답변
2
- 먼저 필요한 프레임 워크 (CoreLocation 및 MapKit)를 가져옵니다.
#import <Foundation/Foundation.h> #import <CoreLocation/CoreLocation.h> #import <MapKit/MapKit.h> @interface Annotation : NSObject <MKAnnotation> @property (nonatomic) CLLocationCoordinate2D coordinate; @property (nonatomic, copy) NSString *title; @property (nonatomic, copy) NSString *subtitle; @end
설치는하는 .m :
#import "Annotation.h" @implementation Annotation @synthesize coordinate, title, subtitle; @end
설정
viewDidLoad
if ([CLLocationManager locationServicesEnabled]) { locationManager = [[CLLocationManager alloc] init]; [locationManager setDelegate:self]; [locationManager setDesiredAccuracy: kCLLocationAccuracyBestForNavigation]; [locationManager startUpdatingLocation]; } self.mapView.delegate = self;
- 그런 다음
설정의 .H 목적-C NSObject의 클래스 주석을 만들
설정은
didUpdateToLocation
// IMPORT ANNOTATION - (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation { [locationManager stopUpdatingLocation]; double miles = 3.10686; double scalingFactor = ABS((cos(2 * M_PI * newLocation.coordinate.latitude/360.0))); MKCoordinateSpan span; span.latitudeDelta = miles/69.0; span.longitudeDelta = miles/(scalingFactor * 69.0); MKCoordinateRegion region; region.span = span; region.center = newLocation.coordinate; [self.mapView setRegion:region animated:YES]; Annotation *annot = [[Annotation alloc] init]; annot.coordinate = newLocation.coordinate; [self.mapView addAnnotation:annot]; }
0
가장 간단한 방법으로지도보기 이동을 위해 MKMapView
에 YES
-showsUserLocation
를 설정하고 MKMapViewDelegate
에
- (void)mapView:(MKMapView *)mapView didUpdateUserLocation:(MKUserLocation *)userLocation {
MKCoordinateRegion region = MKCoordinateRegionMake(userLocation.location.coordinate, MKCoordinateSpanMake(0.01, 0.01));
[mapView setRegion:region animated:NO];
}
을 구현하는 것입니다 그 위치는 사용자의 위치가 발견되었을 때.
지도 앱처럼 사용자 위치에서지도보기에 파란색 점이 표시됩니다.
관련 문제
- 1. 어떻게 ScrollBar 옆에 막대를 놓을 수 있습니까?
- 2. 변수 주석을 어떻게 확인할 수 있습니까?
- 3. DataGrid에 파일을 놓을 수 있습니까?
- 4. 정적 컨트롤에 무언가를 끌어다 놓을 수 있습니까?
- 5. viewDidDisappear 메서드에서 객체를 놓을 수 있습니까?
- 6. 어떻게 2 개의 버튼을 서로 옆에 놓을 수 있습니까?
- 7. CSS 떠 다니는 문제 : 상자를 어떻게 아래에 놓을 수 있습니까?
- 8. obj-c에서 '.txt'파일을 어떻게 끌어 놓을 수 있습니까?
- 9. 2 개의 캘린더를 어떻게 나란히 놓을 수 있습니까?
- 10. listgrid에서 셀 내의 요소를 어떻게 끌어다 놓을 수 있습니까?
- 11. 파일을 Windows 탐색기에 놓을 때 어떻게 감지 할 수 있습니까?
- 12. 어떻게 한 창에서 다른 창으로 정보를 끌어다 놓을 수 있습니까?
- 13. TableView의 아이콘에서 정지 된 아이콘으로 어떻게 끌어다 놓을 수 있습니까?
- 14. 어떻게 GraphicsDevice.Viewport가 잘못된 위치에 있습니까?
- 15. DataGrid에서 행을 드래그하여 Excel에 놓을 수 있습니까?
- 16. WPF 창에서 Windows 탐색기에 파일을 놓을 수 있습니까?
- 17. 메서드 호출시 사용자 정의 주석을 트리거 할 수 있습니까?
- 18. 아이폰 : 어디에서 물건을 놓을 수 있습니까?
- 19. 필드 집합을 나란히 놓을 수 있습니까?
- 20. ListView에서 Winforms의 TreeView로 끌어서 놓을 수 있습니까?
- 21. jstree에서 jqgrid로 끌어서 놓을 수 있습니까?
- 22. Java에서 주석을 언제 어떻게 초기화합니까? 이것을 제어 할 수 있습니까?
- 23. 티타늄 - 사용자 위치에 주석 달기
- 24. iOS 사용자 입력보기는 화면의 임의의 위치에 있습니까?
- 25. hoverIntent를 사용하여 마우스를 올려 놓을 때 마우스 위치에 DIV 표시
- 26. 위치에 도달하면 SMS를 보낼 수 있습니까? -XCODE
- 27. Rails 다형성 연관성 : 어떻게 주석을 달고 변경할 수 있습니까?
- 28. PHP에서 첫 번째 XML 주석을 어떻게 읽을 수 있습니까?
- 29. MonoDevelop에서 MonoTouch 프로젝트에 대한 XML 주석을 어떻게 만들 수 있습니까?
- 30. PropertyInfo 또는 MetaData에서 [NotMapped] 주석을 어떻게 찾을 수 있습니까?