Ist MKMapView undicht

stimmen
1

Neben meiner Frage „Entfernen MKMapViewAnmerkungen verursacht Leckagen.“ Ich habe entdeckt , dass , wenn Sie eine Ansicht basierte Projekt erstellen, ein hinzufügen UISearchBarund MKMapViewin die NIB Ansicht, verdrahten die Delegierten (Ich schaffe keine Methoden , wie wir eigentlich gar nichts tun müssen , um die Lecks zu triggern), Link die MapKit und feuern das Projekt, dann einfach in den Klick UISearchBarUrsachen ein 1k + Leck. Dies geschieht nicht , es sei denn , Sie beide haben UISearchBarund MKMapViewin einer Ansicht. Ich habe die gleichen Probleme , wenn die Ansichten von Code zu erstellen. Ich dachte , ein NIB anders verhalten könnte, aber es funktioniert nicht.

Ist MKMapViewundicht, oder mache ich etwas falsch.

Um das Problem zu replizieren versuchen mit Code den Code unten - Ich habe eine neue „Sicht basierte Anwendung“ Projekt

TestMapViewFromCodeViewController.h

#import <UIKit/UIKit.h>
#import <MapKit/MapKit.h>

@interface TestMapViewFromCodeViewController : UIViewController {
    UISearchBar *searchBar;
    MKMapView *mapView;

}

@property (nonatomic, retain) MKMapView *mapView;
@property (nonatomic, retain) UISearchBar *searchBar;


@end

TestMapViewFromCodeViewController.m

- (void)viewDidLoad {
    [super viewDidLoad];
    UISearchBar * tmpSearchBar = [[UISearchBar alloc] initWithFrame:CGRectMake(0.0,0.0,self.view.frame.size.width,40.0)];
    [self.view addSubview:tmpSearchBar];
    [self setSearchBar:tmpSearchBar];
    [tmpSearchBar release];

    MKMapView *tmpMapView=[[MKMapView alloc] initWithFrame:CGRectMake(0.0,0.0,self.view.frame.size.width,self.view.frame.size.height)];
    tmpMapView.showsUserLocation=FALSE;
    [self.view insertSubview:tmpMapView atIndex:0];
    [self setMapView:tmpMapView];
    [tmpMapView release];
}


- (void)dealloc {
    [mapView release];
    [searchBar release];
    [super dealloc];
}

Obwohl ich die Subviews mit mapView und SearchBar beibehalten habe, ist dies wahrscheinlich nicht notwendig, das Problem zu replizieren.

Bei der Prüfung dieses Code vor der Veröffentlichung hier habe ich gerade bemerkt, dass dieses Leck im Simulator nicht auftritt - nur auf meinem Handy ...

Veröffentlicht am 03/09/2009 um 14:28
quelle vom benutzer
In anderen Sprachen...                            


2 antworten

stimmen
2

Ja.

Es ist ein bekanntes Leck auf 3.0 des MKMapViews. Das Leck tritt auf, wenn Sie die MKMapView ausplanen Dies wird in späteren Versionen behoben. Die Abhilfe ist eine einzige MKMapView zu haben und es wieder verwenden.

https://devforums.apple.com/message/129740#129740

Beantwortet am 04/11/2009 um 08:28
quelle vom benutzer


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