2012-06-06 14 views
25

मैं अंक की एक सरणी एक नक्शे पर तैयार किया जाना है, इसके पहले ही डीकोड:मानचित्रव्यू पर एमकेपोलीलाइन कैसे आकर्षित करें?

- (void) drawRoute:(NSArray *) path { 
    NSInteger numberOfSteps = path.count; 

    CLLocationCoordinate2D coordinates[numberOfSteps]; 
    for (NSInteger index = 0; index < numberOfSteps; index++) { 
     CLLocation *location = [path objectAtIndex:index]; 
     CLLocationCoordinate2D coordinate = location.coordinate; 

     coordinates[index] = coordinate; 
    } 

    MKPolyline *polyLine = [MKPolyline polylineWithCoordinates:coordinates count:numberOfSteps]; 
    [map addOverlay:polyLine]; 
} 

जहां "मानचित्र" MKMapView का एक उदाहरण है, और पथ सरणी अंक की पहले से ही डीकोड सेट का प्रतिनिधित्व करता है।

मैंने सोचा था कि लाइन [map addOverlay:polyLine]; के साथ निकल जाएगी। मैंने कुछ पेजों में इस विधि को देखा है:

- (MKOverlayView *)mapView:(MKMapView *)mapView viewForOverlay:(id <MKOverlay>)overlay { 
    MKPolylineView *polylineView = [[MKPolylineView alloc] initWithPolyline:overlay]; 
    polylineView.strokeColor = [UIColor redColor]; 
    polylineView.lineWidth = 1.0; 

    return polylineView; 
} 

क्या पॉलीलाइन देखें वास्तव में मानचित्र पर क्या खींचा जाता है? मैंने एमकेपोलीलाइन (उपरोक्त विधि से) को इस अंतिम विधि के "< एमकेओवरले> ओवरले" तर्क में पास करने का भी प्रयास किया है, लेकिन अपवाद फेंकता है।

मुझे लगता है कि मैं पास हूँ, लेकिन मैं अब क्या करना नहीं जानता।

कृपया मदद करें! पहले से ही बहुत - बहुत धन्यवाद।

+2

ध्यान दें कि यह कोड अब iOS7 पर अप्रचलित है। –

उत्तर

13

डन के लिए।

एक बहुत ही बेवकूफ बात थी, मैं MapView के लिए प्रतिनिधि निर्धारित नहीं की। बस [नक्शा सेट डिलीगेट: स्वयं] जोड़ना; चाल है

वैसे भी धन्यवाद !.

4

बस MKPolyline बनाने निर्देशांक के साथ कि पॉलीलाइन दृश्य नक्शे में जोड़ने &।

MKPolyline *polyLine = [MKPolyline polylineWithCoordinates:coordinates count:numberOfSteps]; 
    [map addOverlay:polyLine]; 

आप कैसे कुछ निर्देशांक से अधिक पॉलीलाइन आकर्षित करने के लिए पर एक ट्यूटोरियल here मिल जाएगा। संपादित करें: यूआरएल अब मान्य नहीं लगता है। आप इस यूआरएल here के संग्रहीत संस्करण को पा सकते हैं।

+0

यहां इसके संग्रहीत संस्करण का एक लिंक: http://web.archive.org/web/20120906022305/http://navarra.ca/?p=786 – Brian

संबंधित मुद्दे