一千萬個為什麽

搜索

顯示當前位置,以及iPhone中的另一個位置

每當我們加載mapview時,它自動顯示當前用戶位置。在我的情況下,我在地圖上顯示另一個位置,這樣地圖加載當前位置並縮放到我給出的位置..但是,當前位置點沒有顯示(藍色的自動來...)。 我給了mapView.showCurrentLocation = TRUE;但它沒有表現出來。 所以任何一個人都可以告訴它的工作方式,它應該說出當前的位置標記,然後放大到我給出的點。 謝謝

- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id )annotation {
    static NSString *defaultPinID = @"CameraAnnotation";
    MKPinAnnotationView *retval = nil;
    static int postag=1;

    (MKPinAnnotationView *)[mapView dequeueReusableAnnotationViewWithIdentifier:defaultPinID];
    if(annotation=MapView.userLocation)
    {
        return nil;
    }
   //If we have to, create a new view
    else    if (retval == nil)
    {
        retval = [[[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:defaultPinID] autorelease];

        UIButton *myDetailButton = [UIButton buttonWithType:UIButtonTypeDetailDisclosure];
        myDetailButton.frame = CGRectMake(0, 0, 50, 23);
        myDetailButton.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter;
        myDetailButton.contentHorizontalAlignment = UIControlContentHorizontalAlignmentCenter;
        myDetailButton.tag=postag;
        postag++;
        [myDetailButton addTarget:self action:@selector(showLinks:) forControlEvents:UIControlEventTouchUpInside];
        retval.rightCalloutAccessoryView = myDetailButton;
        [retval setPinColor:MKPinAnnotationColorRed];
        retval.animatesDrop = YES;
        retval.canShowCallout = YES;
    }

    return retval;
}

最佳答案

在模擬器中,默認的當前位置是Cupertino。這是您所看到的,它將在設備中正常工作。

此外,您應該使用CLLocationManager來獲取當前位置。

- (void)applicationDidFinishLaunching:(UIApplication *)application { 
{
self.locationManager = [[[CLLocationManager alloc] init] autorelease];
self.locationManager.delegate = self;//Tells the location manager to send updates to this object
[locationManager startUpdatingLocation];
}

改變針腳顏色

MKPinAnnotationView   *pin=[[[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:@"pin"]autorelease];

[pin setPinColor:MKPinAnnotationColorRed];

祝一切順利。

轉載註明原文: 顯示當前位置,以及iPhone中的另一個位置