met huidige locatie, samen met een andere locatie in iphone

stemmen
2

wanneer we een Mapview laadt, automaticallay toont de huidige locatie van de gebruiker naar rechts. In mijn geval ben ik laten zien een andere locatie op de kaart, zodat de kaart laadt de huidige locatie en ingezoomd op de locatie die ik heb gegeven .. maar, de huidige locatie punt was niet te zien (de blauwe die automaticay komt ..). Ik heb mapView.showCurrentLocation gegeven = TRUE; maar het is niet gespeeld. dus kon iemand vertelt hoe het werkt en het moet de huidige locatie merk te zeggen en vervolgens ingezoomd om het punt dat ik heb gegeven. Bedankt

- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>)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;
}
De vraag is gesteld op 07/05/2010 om 09:54
bron van user
In andere talen...                            


2 antwoorden

stemmen
2

In simulator de standaard huidige locatie is Cupertino.This is wat u ziet, zal het goed in het apparaat werkt.

Meer over u CLLocationManager moet gebruiken om de huidige locatie te krijgen.

- (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];
}

Om de pin kleur veranderen

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

[pin setPinColor:MKPinAnnotationColorRed];

Het beste.

antwoordde op 07/05/2010 om 10:03
bron van user

stemmen
1

een kijkje nemen op het antwoord op deze vraag aan de MKMapView zoomniveau in te stellen om alle MKAnnotations die eraan verbonden zijn omvatten

antwoordde op 07/05/2010 om 12:38
bron van user

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more