Iphone 如何声明多边形
伙计们,这看起来是个简单的问题,但对我来说太复杂了。我正在尝试创建一个MKPolygon实例,但进展不太顺利。代码如下:Iphone 如何声明多边形,iphone,ios,mkmapview,Iphone,Ios,Mkmapview,伙计们,这看起来是个简单的问题,但对我来说太复杂了。我正在尝试创建一个MKPolygon实例,但进展不太顺利。代码如下: MKMapPoint point1 = {38.53607,-121.765793}; MKMapPoint point2 = {38.537606,-121.768379}; MKMapPoint point3 = {38.53487,-121.770578}; NSArray *mapPointArr = [[NSArray alloc] initWithObjec
MKMapPoint point1 = {38.53607,-121.765793};
MKMapPoint point2 = {38.537606,-121.768379};
MKMapPoint point3 = {38.53487,-121.770578};
NSArray *mapPointArr = [[NSArray alloc] initWithObjects:point1,point2,point3,nil count:3]; //errors here
MKPolygon *polygon = [MKPolygon polygonWithPoints:mapPointArr count:3];
在初始化数组的那一行上出现了一系列错误(
参数1的不兼容类型
…)。知道怎么了吗?提前谢谢 MKMapPoint是一个普通的c结构,不能直接将其添加到objective-c容器中
在您的情况下,您不需要这样做,因为+polygonWithPoints:
不需要NSArray,而是需要一个c数组作为第一个参数。创建多边形的正确方法是:
MKMapPoint points[3] = {{38.53607,-121.765793}, {38.537606,-121.768379}, {38.53487,-121.770578}};
MKPolygon *polygon = [MKPolygon polygonWithPoints:points count:3];
要将其添加到地图上,您需要执行[mapView addOverlay:polygon];然后实现viewForOverlay委托方法