Kar*_*y S 31 objective-c mapkit ios4 ios
我觉得这个问题很糟糕,因为看起来这么简单,但是我已经查看了所有相关的资源,尝试了很多我见过别人使用的解决方案的组合,以及什么都没有效果......
我试图迭代我收到的一些XML,并解析XML中坐标的纬度和经度,并将其存储在一个数组中,然后我将从中绘制它.
我的问题是无论我使用什么类型,我如何投射,你有什么,xcode总是发现它的某些问题.
我的.h文件的相关部分:
CLLocationCoordinate2D Coord;
CLLocationDegrees lat;
CLLocationDegrees lon;
@property (nonatomic, readwrite) CLLocationCoordinate2D Coord;
@property (nonatomic, readwrite) CLLocationDegrees lat;
@property (nonatomic, readwrite) CLLocationDegrees lon;
Run Code Online (Sandbox Code Playgroud)
我的.m文件的相关部分:
else if ([elementName isEqualToString:@"Lat"]) {
checkpoint.lat = [[attributeDict objectForKey:@"degrees"] integerValue];
}
else if ([elementName isEqualToString:@"Lon"]) {
checkpoint.lon = [[attributeDict objectForKey:@"degrees"] integerValue];
}
else if ([elementName isEqualToString:@"Coord"]) {
checkpoint.Coord = [[CLLocation alloc] initWithLatitude:checkpoint.lat longitude:checkpoint.lon];
}
Run Code Online (Sandbox Code Playgroud)
我得到的当前错误是:"从不兼容的类型'id''分配给'CLLocationCoordinate2D.我认为这意味着初始化函数的返回值不正确,但我不知道为什么因为它是内置函数...
我也尝试过看到别人在做什么对我最有意义的事情:
checkpoint.Coord = CLLocationCoordinate2DMake(checkpoint.lat, checkpoint.lon);
Run Code Online (Sandbox Code Playgroud)
虽然这不会立即返回错误,但当我尝试构建并运行它时,它会给我:
体系结构i386的未定义符号:"_ CLLocationCoordinate2DMake",引自: - Checkpoint.o中的[XMLParser parser:didStartElement:namespaceURI:qualifiedName:attributes:] ld:未找到架构i386的符号collect2:ld返回1退出状态
任何帮助/澄清/推动正确的方向将非常感激,因为我现在非常缺乏想法.
Fir*_*eer 50
对你来说最有意义的(CLLocationCoordinate2DMake)是正确的.您只是忘了在项目中包含CoreLocation框架.
而且,正如其他人所指出的那样,文件中的lat/lon可能不是整数.
我做的是:首先创建一个CLLocationCoordinate2D:
CLLocationCoordinate2D c2D = CLLocationCoordinate2DMake(CLLocationDegrees latitude, CLLocationDegrees longitude);
Run Code Online (Sandbox Code Playgroud)
我的经纬度是双重类型.
在您的Imports中确保导入Mapkit库.
#import <MapKit/MapKit.h>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
54420 次 |
| 最近记录: |