0

내가 가진지도보기에서 사용자의 위치를 ​​표시하고 있습니다 :MKMapView에서 현재 위치를 사용할 수 있는지 확인하는 방법은 무엇입니까?

self.mapView.showsUserLocation = YES;

사용자는 자신이 현재 위치 여부를 사용할 수 있는지 여부를 선택할 수 있습니다 AlertView를하라는 메시지가 표시됩니다. 그가 예를 누르면 모든 것이 정상이며 걱정하지 않습니다.

하지만 그가 아니오를 누르면 특정 지역을 확대하고 싶습니다.

그럼 MKMapView가 현재 위치를 사용할 수 있는지 어떻게 알 수 있습니까?

내 자신의 CLLocationManager 및 해당 대리인이 거부 된 오류를 반환하는지 확인하는 솔루션을 찾았습니다. 그러나 이것은별로 좋지 않습니다. 왜 필요하지 않으면 새로운 CLLocationManger를 도입할까요?

다른 방법이 있습니까?

+1

당신이'CLLocationManager 클래스 Reference'을 확인 했 그냥 CLLocationManager 클래스 메서드 authorizationStatus를 사용할 수 있습니까? CLLocationManager 클래스의'authorizationStatus' 메쏘드를 사용해야한다고 말하는 몇 줄의 텍스트가 있습니다. – Stas

답변

2

위임자는 필요하지 않습니다. 가능한 값은

if ([CLLocationManager authorizationStatus] == kCLAuthorizationStatusAuthorized) { 
    // allowed 
} else { 
    // not allowed 
} 

:

typedef enum { 
    kCLAuthorizationStatusNotDetermined = 0, 
    kCLAuthorizationStatusRestricted, 
    kCLAuthorizationStatusDenied, 
    kCLAuthorizationStatusAuthorized 
} CLAuthorizationStatus; 
+0

정확히 필요한 부분입니다! 고맙습니다! 나는이 해결책에 대해 생각조차하지 않은 위임 된 일에 너무 고쳤다. – bllubbor