2011-05-16 5 views
1

MapView에서 사용자 위치를 표시하는 데 도움이 필요합니다. 온라인에서 찾을 수있는 모든 것을 다했으나 여전히 작동하지 않습니다.MKMapKit 사용자 위치가 표시되지 않음

내 viewController에서 locationUpdate를 호출하는 AppDelegate에 CLLocationManager가 있습니다.

(void)locationUpdate:(CLLocation *)location 방법은 내 아이폰의 화면에는 "블루 닷"없다 때마다 호출 여전히 NSLog().와 함께 기록 할 때 location 좌표는 정확됩니다. 지역도 설정되지 않았습니다.

내가 무엇을 놓치고 있는지 한번보세요.

이 내 헤더 파일입니다

//My .m file 
#import "FirstViewController.h" 
@implementation FirstViewController 
- (void)viewDidLoad 
{ 
    mapView = [[MKMapView alloc] initWithFrame:self.view.bounds]; 
    mapView.showsUserLocation = YES; 
    mapView.mapType = MKMapTypeStandard; 
    mapView.delegate = self; 

    CLLocationCoordinate2D location; 
    MKCoordinateRegion region;// = {{0.0,0.0},{0.0,0.0}}; 
    location.latitude = -33.8771; 
    location.longitude = 18.6155; 
    MKCoordinateSpan span; 
    span.latitudeDelta = 0.01; 
    span.longitudeDelta = 0.01; 
    region.span = span; 
    region.center = location; 
    [mapView setRegion:region animated:TRUE]; 
    [mapView regionThatFits:region]; 
    [super viewDidLoad]; 
} 
-(void)locationUpdate:(CLLocation *)location 
{ 
    CLLocationCoordinate2D loc = [location coordinate]; 
    [mapView setCenterCoordinate:loc]; 
    if([mapView showsUserLocation] == NO) 
    [mapView setShowsUserLocation:YES]; 
    NSLog(@"User Loc: %f, %f", mapView.userLocation.location.coordinate.latitude, 
        mapView.userLocation.location.coordinate.longitude); 
    NSLog(@"In MapView: %@",[location description]); 
} 
@end 

이 시간 내 주셔서 감사합니다

//My .h file 
#import <UIKit/UIKit.h> 
#import <MapKit/MapKit.h> 
#import <MapKit/MKAnnotation.h> 
#import <MapKit/MKReverseGeocoder.h> 
@interface FirstViewController : UIViewController <MKMapViewDelegate> 
{ 
    MKMapView *mapView; 
} 
-(void)locationUpdate:(CLLocation *)location; 
-(void)locationError:(NSError *)error; 
@end 

이 내 구현 파일의 내 역할입니다! 대단히 감사합니다!

+1

지도가 전혀 보이지 않습니까? 왜 mapView에 addSubView를하지 않습니까? 시뮬레이터에서 실행 중입니까? – Anna

+0

완전히 축소 된 세계지도를보고 있습니다. 그런 다음 사무실로 직접 확대하십시오. "지도"보기의 정상적인지도처럼 보입니다. MapView는 TabBarController의 패널 중 하나에 있습니다. 시뮬레이터와 iPhone 4 모두 실행 중입니다. – LouwHopley

+0

지도가 표시되는 것은 인터페이스 작성기에서 작성한 것이지만보기 컨트롤러에 선언 된 것과 연결되어 있지 않다고 생각합니다. – Anna

답변

3

인터페이스 빌더의 맵 키트에 (사용자 위치 찾기)가 있어야합니다!