mehrere regionDidChangeAnimated nennt - was ist passiert?

stimmen
0

Ich habe einen MKMapView in einem UITableView als benutzerdefinierte Zelle (nicht fragen;) - weiß nicht, ob es wirklich) zählt, für die ich ein regionDidChangeAnimated Delegatmethode registrieren. Dieses Verfahren wird dreimal aufgerufen, wenn die UITableView geladen wird - einmal mit dem aktuellen Bereich und dann zwei weitere Male mit einer Region, die Art und Weise ausgeschaltet ist. Im Simulator, erhalte ich konsequent eine Region mit Zentrum (+37.43997405, -97,03125000). Auf dem Gerät, so scheint es auf dem Standort durch die Standortmanager gemeldet abhängen, die die Kartenansicht initialisiert.

Warum erhalte ich drei regionDidChangeAnimated Anrufe? Und warum sind das Zentrum für die letzten zwei von ihnen koordiniert ab?

Dies ist der Code Ich benutze das Zentrum zu erhalten Koordinaten:

- (void)mapView:(MKMapView *)mapView regionDidChangeAnimated:(BOOL)animated {
    CLLocation *l = [[CLLocation alloc] initWithLatitude:self.mapView.centerCoordinate.latitude longitude:self.mapView.centerCoordinate.longitude];
(....)
Veröffentlicht am 15/01/2010 um 20:17
quelle vom benutzer
In anderen Sprachen...                            


1 antworten

stimmen
1

Ich habe eine Kartenansicht innerhalb einer benutzerdefinierten Tabellenansicht Zelle und fügte hinzu, dass die Zelle zu einer Tabellenansicht einrichten (obwohl es sollte auf jeden Fall keine Rolle, wo / wie die Kartenansicht angezeigt wird).

Ich sehe keine unerwarteten Anrufe an die regionDidChangeAnimated:delegierte Methode.

Ich sehe Aufrufe dieser Methode nur dann, wenn:

  1. Der Benutzer ändert die Position / Zoom der Karte, OR
  2. Einige Code ändert die Mitte / span der Karte

Sind Sie sicher, dass Sie unerwartete Anrufe sehen? Sie verwenden nicht Code zum Einrichten der Region (Mitte / span) von der Karte?

Beantwortet am 15/01/2010 um 21:21
quelle vom benutzer

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