2011-05-11 2 views
0

mapkit을 사용하고 있으며 얇은 코드를 사용하여위도와 경도 할당 오류

 double  latitude1; 
    double  longitude1; 
@property (assign) double latitude1; 
@property (assign) double longitude1; 

위도와 경도 모두 데이터베이스에서 이중 형식으로하지만이 줄을 쓸 때 오류가 발생했습니다 : (

CLLocationCoordinate2D theCoordinate; 
     theCoordinate.latitude = [ classObj.latitude1 doubleValue]; 
     theCoordinate.longitude = [ classObj.longitude1 doubleValue]; 

이 오류가 발생합니다 " 잘못된 형식의 이중받는 " 나는 float로 변환했지만 didnot도 작동합니다 ..

+0

getter를 생성하려면 @synthesize를 사용 했습니까? 그리고 primitive 유형에는 assign을 사용하지 마십시오. –

+0

'@synthesize latitude1, longitude1' –

답변

0

latitude1 특성 전 이미 일반 double입니다. doubleValue를 호출 할 필요가 없습니다 (사용할 수 없습니다). 그냥 쓰기 :

theCoordinate.latitude = classObj.latitude1; 

또는

LLocationCoordinate2D theCoordinate = CLLocationCoordinate2DMake(classObj.latitude1, classObj.longitude1); 
+0

@ Vladimir .. 감사합니다. 지금은 작동 중입니다. (^_^) –

0

당신은 latitude1 정의하고 longitude1이

그래서 두 번, 당신이 직접 지정할 수 있습니다 더 나은합니다.

CLLocationCoordinate2D theCoordinate; 
theCoordinate.latitude = classObj.latitude1; 
theCoordinate.longitude = classObj.longitude1; 
0

추천

[classObj.latitude1있는 doubleValue]가 통상 요구 타입 캐스팅 때 사용하지만 CLLocationCoordinate2D의 위도와 경도를 배정한다. 그냥 캐스팅 할 필요가 없습니다. 값을 지정하십시오.

CLLocationCoordinate2D theCoordinate; 
     theCoordinate.latitude = classObj.latitude1; 
     theCoordinate.longitude = classObj.longitude1; 
관련 문제