Вопрос в том, сохраняет ли insertSubview
представления и правильно ли я делаю.
Я бы сказал, да. Так как я больше не использую собственность, я не получаю EXC_BAD_ACCESS
. Я думаю, что при выпуске представления все подпредставления также освобождаются. И поэтому mapView
переиздан. Я прав или у меня все еще есть проблема с управлением памятью?
My ViewController.h
#import <UIKit/UIKit.h>
#import <MapKit/MapKit.h>
@interface MapViewController : UIViewController <MKMapViewDelegate> {
MKMapView *mapView;
// ...
}
//@property (nonatomic, retain) MKMapView *mapView;
// ...
@end
My ViewController.m
#import "MapViewController.h"
@implementation MapViewController
//@synthesize mapView;
- (void)viewDidLoad {
[super viewDidLoad];
//self.mapView=[[[MKMapView alloc] initWithFrame:self.view.bounds] autorelease];
mapView = [[MKMapView alloc] initWithFrame:self.view.bounds];
[self.view insertSubview:mapView atIndex:0];
[mapView release];
// ...
}
- (void)dealloc {
//[mapView release];
[super dealloc];
}
@end