Я не мог понять, почему этот код помечен как имеющий утечки памяти:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
MenuViewController *menuView = [[MenuViewController alloc] initWithNibName:@"MenuView" bundle:[NSBundle mainBundle]];
navigationController = [[UINavigationController alloc] initWithRootViewController:menuView];
navigationController.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"livreto-verso-horizontal.png"]]; // memory leak here 47,1%
[menuView release];
BilheteViewController *rightView = [[BilheteViewController alloc] initWithNibName:@"BilheteView" bundle: [NSBundle mainBundle]];
spliViewController.viewControllers = [NSArray arrayWithObjects:navigationController, rightView, nil]; // memory leak here 52,9%
[window addSubview:spliViewController.view];
[window makeKeyAndVisible];
[rightView release];
return YES;
}
Только строки, отмеченные проблемами:
navigationController.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"livreto-verso-horizontal.png"]]
и
spliViewController.viewControllers = [NSArray arrayWithObjects:navigationController, rightView, nil];
Как я могу решить эту утечку?
Обновление 1
Выпущен метод dealloc приложения-делегата, и navigationController, и spliViewController:
- (void)dealloc {
[navigationController release];
[spliViewController release];
[window release];
[super dealloc];
}