2009-08-22 4 views
0

난 내가 위치를 통해 CLLocation 인스턴스를 얻을오류 설정 속성은

@interface MyLocation: CLLocation { 
    NSString *datum; 
    NSString *ellipsoid; 
} 

@property(nonatomic,retain) NSString *ellipsoid; 
@property(nonatomic,retain) NSString *datum; 

MyLocation.m

@synthesize datum,ellipsoid; 

이제 CLLocation

의 서브 클래스

MyLocation.h을 정의한 관리자 대표자

  • (void) locationManager : (CLLocationManager *) manager didUpdateToLocation : (CLLocation *) newLocation fromLocation : (CLLocation *) oldLocation { //self.myPosition은 MyLocation myPosition입니다. self.myPosition = newLocation; [myPosition setDatum : @ "WGS 84"]; [myPosition setEllipsoid : @ "WGS 84"]; 내가 self.myPosition =를 newLocation을 수행 할 때 }

나는 캐치되지 않는 예외를 얻을 그리고 내가 또한 같은 결과를이 방법으로 시도했습니다

사망 :

self.myPosition = (MyLocation *)newLocation; 

답변

0

를 newLocation이되지 않습니다 UR 하위 클래스의 인스턴스가 그 할당이나 캐스팅을하는 동안 잘못된 캐스트가 발생하여 오류가 발생합니다. U 하위 클래스의 값을 설정해야합니다.

등등