我想在地图上的折线路线上设置一个矩形。
这正是我想要做的:
- (MKOverlayRenderer *)mapView:(MKMapView *)mapView rendererForOverlay:(id<MKOverlay>)overlay
{
if ([overlay isKindOfClass:[MKPolyline class]]) {
MKPolyline *route = overlay;
MKPolylineRenderer *routeRenderer = [[MKPolylineRenderer alloc] initWithPolyline:route];
routeRenderer.strokeColor = [[UIColor blueColor] colorWithAlphaComponent:0.7];
routeRenderer.lineWidth = 5.0;
[self.mapView.visibleMapRect = route.boundingMapRect];
return routeRenderer;
}
else return nil;
}
我对这行代码有疑问:
[self.mapView.visibleMapRect = route.boundingMapRect];
我收到“预期标识符”错误。这行代码有什么问题? 是为MKPolyline路线设置Mkrect的正确方法吗?
谢谢!
答案 0 :(得分:0)
这不是你写Objective-C的方式,试试这个
self.mapView.visibleMapRect = route.boundingMapRect;
或
[self.mapView setVisibleMapRect:route.boundingMapRect animated:YES];
答案 1 :(得分:0)
我用这两行代码解决了:
MKMapRect test = MKMapRectInset(route.boundingMapRect, -route.boundingMapRect.size.height/2, -route.boundingMapRect.size.width/2);
[self.mapView setVisibleMapRect:test animated:YES];