У меня есть два viewcontroller, и я переключаюсь между ними с помощью класса Segue.
-(IBAction)selectActiveAccount:(id)sender
{
[self setActiveAccountTag: [(UIButton *)sender tag]];
[self dyeObjects];
[self performSegueWithIdentifier:@"mainScreen" sender:[(NMBButton *)sender buttonUserName]];
}
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([[segue identifier] isEqualToString:@"mainScreen"])
{
NMBViewController *mScreen = [segue destinationViewController];
[mScreen setActiveUser:sender];
}
}
Приборы не показывают утечек в обоих классах viewcontroller, однако во всех коммутаторах viewcontroller продолжают расти все распределения.Каждый раз при переключении увеличивается 1 - 2Мб.Я кэширую изображения на обоих контроллерах представления, но я удаляю все на viewDidDisappear.Любые идеи будут приветствоваться.
Редактировать: как я уже говорил, нет утечки на инструментах.Я использую метод доступа для установки объектов и проверил все выделенные объекты.Все они освобождены.Впервые я сталкиваюсь с такой проблемой.Если вы отпустите все объекты, использование памяти не должно увеличиваться.
- (void)viewDidDisappear:(BOOL)animated
{
SDImageCache *imageCache = [SDImageCache sharedImageCache];
[imageCache clearMemory];
[imageCache clearDisk];
[imageCache cleanDisk];
[super viewDidDisappear:animated];
}
- (void)viewDidUnload
{
logS(@"viewDidUnload");
[dashboardTableView release];
dashboardTableView = nil;
[dashboard release];
dashboard = nil;
[super viewDidUnload];
}
- (void)dealloc
{
[dashboard release];
[dashboardTableView release];
[super dealloc];
}
Большое вам спасибо.