2012-06-02 96 views
1

我試圖讓我的MKPolyline顯示,我想我擁有最多的一切權利,但我必須缺少一些東西。沒有錯誤代碼,否則地圖顯示正常,我可以放棄註釋引腳。MKPolyline不會顯示

的.H

@interface SatFinderViewController: UIViewController 
<MKMapViewDelegate> 
{ 
IBOutlet MKOverlayView *mapView; 
IBOutlet MKMapView *map; 
MKMapView *_mapView; 
MKPolyline *_routeLine; 
MKPolylineView *_routeLineView; 

} 
@property (nonatomic, retain) IBOutlet MKMapView *map; 
@property (nonatomic, retain) MKAnnotationView *mapAView; 
@property (nonatomic, retain) MKOverlayView *mapView; 
@property (nonatomic, retain) MKPolyline *routeLine; 
@property (nonatomic, retain) MKPolylineView *routeLineView; 

-(void)calculate; 
-(void)loadRoute; 

@end 

的.M

-(void)calculate 
{ ... 

[map removeOverlay:self.routeLine]; 
self.routeLine = nil; 
[self loadRoute]; 
[map addOverlay:routeLine]; 
[map setNeedsDisplay]; 

} 

-(void) loadRoute 
{ 
SatFinderAppDelegate *appdel = (SatFinderAppDelegate *)[[UIApplication sharedApplication]delegate]; 
float s = [appdel.location floatValue]; 

CLLocationCoordinate2D *locations = malloc(sizeof(CLLocationCoordinate2D) * 2); 

CLLocationCoordinate2D satcoord = CLLocationCoordinate2DMake(0, s); 
CLLocationCoordinate2D dishcoord = CLLocationCoordinate2DMake(pinlat, pinlon); 

locations[0] = satcoord; 
locations[1] = dishcoord; 

NSLog(@"satcoord %f,%f", locations[0].latitude, locations[0].longitude); 
NSLog(@"dishcord %f,%f", locations[1].latitude, locations[1].longitude); 

// Create the polyline based on the array of points. 
routeLine = [MKPolyline polylineWithCoordinates:locations count:1]; 

[routeLineView setNeedsDisplay]; 

} 
- (MKOverlayView *)mapView:(MKMapView *)map viewForOverlay:(id <MKOverlay>)overlay 
{ 

routeLineView = [[MKPolylineView alloc] initWithPolyline:self.routeLine]; 
routeLineView.fillColor = [UIColor blueColor]; 
routeLineView.strokeColor = [UIColor blueColor]; 
routeLineView.lineWidth = 5; 
return routeLineView; 

} 
+0

routeLine = [MKPolyline polylineWithCoordinates :位置計數:1]; –

回答

0
routeLine = [MKPolyline polylineWithCoordinates:locations count:1]; 

應該是 「計數:2」 而非 「計數:1」