Ich habe eine MKMapView
mit Scrollen und UserInteraction in einem UITableViewCell
deaktiviert. Der gewünschte Effekt (effektiv ein statisches Bild der Karte in einer bestimmten Position) funktioniert wirklich gut, aber wenn der MKMapView
auf dem Bildschirm driftet (Scrollen), lädt er die Karte neu, was gelegentlich zum Absturz der App führt. Ich habe die Gewohnheit geladen UITableViewCell
in wie jedes andere UITableViewCell
in cellForRowAtIndexPath
:Stop MKMapView von Neuladen
if(indexPath.section == 0 && indexPath.row == 0)
{
MapTableViewCell *cell = (MapTableViewCell *)[tableView dequeueReusableCellWithIdentifier:[NSString stringWithFormat:@"%@Map", cellIdentifier]];
if(cell == nil)
{
cell = [[[MapTableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:cellIdentifier] autorelease];
}
NSArray *topLevelObjects = [[NSBundle mainBundle] loadNibNamed:@"MapTableViewCell" owner:self options:nil];
for(id currentObject in topLevelObjects)
{
if([currentObject isKindOfClass:[UITableViewCell class]])
{
cell = (MapTableViewCell *)currentObject;
break;
}
}
return cell;
}
Ich habe, dass mit dieser aktuellen Methode herausgefunden, ob Sie die Karte Bild Last lassen, bevor die UITableView
bewegen dann auf OK es ist. Aber wenn Sie es vom Bildschirm entfernen, bevor es fertig geladen ist, wird es abstürzen! :(
Ich werde nur darauf hinweisen, dass ich nicht in der Lage sein möchte, die Karte in irgendeiner Weise zu steuern oder irgendwelche Anmerkungen zu zeigen. Ich habe versucht, eine Kartenansicht zu screenen, es vom Bildschirm ausblenden und diesen Screenshot anzeigen ! als UIImageView
im UITableViewCell
aber nicht schnell genug war
EDIT:.. aktualisiert Code Dies ist der vollständige Code für diese Methode ist meine Gewohnheit TableViewCell alloc falsch hier
Nicht offensichtlich, welches Ergebnis Sie eigentlich erreichen möchten. Wenn der MKMapView-Delegat die Zelle ist, müssen Sie den Delegaten möglicherweise in der Zelle -dealloc aufheben. Ich kann auch nicht herausfinden, was dein Nib-Laden tun soll. –
Ich habe das jetzt dank gemacht. Denke, es könnte sein, dass du es weißt. Soll ich die MapView auch hier veröffentlichen? –
@tc Dealloc schien die Zelle zu arbeiten. Setzen Sie das als Antwort und ich gebe Ihnen das grüne Häkchen! –